@charset "UTF-8";

/************************************************
* 全般スタイル
************************************************/

* {
  box-sizing: border-box;
}
/* webkit specific styles */

input[type="color"]::-webkit-color-swatch {
  border: none;
}

input[type="color"]::-webkit-color-swatch-wrapper {
  padding: 0;
}
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    font-weight:inherit;
    box-sizing: border-box;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    text-decoration: none;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

input:focus {
  outline: none;
}
/* ul, ol { */
li {
  list-style-type: none;
}


html {
  font-size: 1.33vw;
  scroll-behavior: smooth;
}

html, body {
  scroll-margin-top: 8.0rem;
  /*scroll-padding-top: 60px;*/
  scroll-behavior: smooth;
}
@media (min-width: 40em) {
  html, body {
    font-size: 16px;
    font-size: 16px\9;
    scroll-margin-top: 70px;
    /*scroll-padding-top: 150px;*/
  }
}

body {
  color: #333333;
  font-family: 'Noto Sans JP', 'Noto Sans', 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;
  font-size: 15px;
  line-height: 2.0;
  overflow-x: hidden;
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}
@media (min-width: 40em) {
  body {
    overflow-x: auto;
  }
}

a,
a:link,
a:active,
a:visited {
  color: var(--color-link);
  /*text-decoration: none;*/
}
@media (min-width: 40em) {
  a[href^="tel:"] {
    pointer-events: none;
    text-decoration: none;
    color: inherit;
  }
}

.fot-tsuku{
  font-family: "fot-tsukubrdgothic-std", sans-serif;
  font-weight: 400;
  font-style: normal;
}

main a:hover,
footer a:hover,
.o-notice a:hover,
.o-correspondent-list a:hover,
.o-single_page a:hover{
  opacity:0.7;
	transition:0.3s;
}

a[class*="c-link--none"]:hover{
  opacity:1;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}
_:-ms-input-placeholder, :root img {
  flex-shrink: 0;
}

iframe {
  vertical-align: bottom;
}

strong, b {
  font-weight: bold;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

sub {
  vertical-align: baseline;
  bottom: -0.25em;
  position: relative;
  font-size: smaller;
  line-height: 0;
}

@media (min-width: 40em) {
  html {
    min-width: 78rem;
  }
  .c-container {
    min-width: 68.75rem;;
  }
  .c-container--limit {
    padding-right: 0;
    padding-left: 0;
    max-width: 85rem;
  }
}

#page {
  margin-bottom: 5rem;
  position: relative;
  overflow-x: hidden;
  overflow-y: hidden;
}
.home #page,
.single-cp_case #page {
  margin-bottom: 0;
}



/* swiper */
.swiper-pagination-bullet {
  width: 10px;
  height: 10px;
}
.swiper-pagination-bullet-active {
  background-color: var(--color-main);
  color: var(--color-main-text);
}
.swiper-container-horizontal > .swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 10px;
}

/*resTables*/
table.restables-clone {
  display: none;
}

@media (max-width: 40em) {
  table.restables-origin {
      display: none;
  }
  table.restables-clone {
      display: table;
  }
}

/* Lity */
.lity-container {
  max-width: 95%;
}

/* Elementor */
.elementor-background-slideshow.swiper-container {
  padding-bottom: 0;
}

.select{
  background-color: var(--color-main);
  color: var(--color-main-text);
}

.select a{
  color: var(--color-main-text) !important;
}

.pagenation{
  width: 100%;
  text-align: center;
  margin-top: 1rem;
}
.pagenation span,.pagenation a{
	display: inline-block;
	padding-top:0.5rem;
	padding-bottom: 0.5rem;
	padding-left: 1rem;
	padding-right: 1rem;
	padding: 0.75rem 1rem;
	margin-right: 1rem;
	font-size: 1.0rem;
	text-align:center;
	color: var(--color-main);
	/*box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.2);*/
	border: 1px solid #d8d8d8;
}

.pagenation a:hover{
  background-color: var(--color-main);
  color: var(--color-main-text);
  transition: 0.3s;
}

@media (max-width:39.99999em){
	.pagenation span,.pagenation a{
		margin-right: 0.8rem;
		margin-bottom: 1.1rem;
	}
}

/* --- Googleマップのレスポンシブ対応 --- */
iframe[src^="https://www.google.com/maps/embed"] {
  width: 100%;
}
@media not all and (min-width: 40em) {
  iframe[src^="https://www.google.com/maps/embed"] {
      height: auto;
      aspect-ratio: 4/ 3;
  }
}
@media not all and (min-width: 40em) {
  iframe[src^="https://www.google.com/maps/embed"] {
  }
}

/* --- Googleカレンダーのレスポンシブ対応 --- */
iframe[src^="https://calendar.google.com/calendar/embed"] {
  width: 100%;
}

a[href $='.pdf'] {
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
}

a[href $='.pdf']::before {
  content: "\f1c1";
  color: #bb1111;
  margin-right: 2px;
  font-size: 1em;
}

a[href $='.doc'],a[href $='.docx'] {
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
}

a[href $='.doc']::before,a[href $='.docx']::before {
  content: "\f1c2";
  color: #1111bb;
  margin-right: 2px;
  font-size: 1em;
}

a[href $='.xls'],a[href $='.xlsx'] {
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
}

a[href $='.xls']::before,a[href $='.xlsx']::before {
  content: "\f1c3";
  color: #11bb11;
  margin-right: 2px;
  font-size: 1em;
}

a.c-icon--none::before {
  content: none!important;
}

.wpulike {
  clear: both;
}

a, button {
  cursor: pointer;
}

figcaption {
  font-size: 13px;
}

.smf-form--business .smf-item {
  border: 1px solid #FFFFFF;
  margin-bottom: 0;
  margin-top: 0;
}
.smf-form--business .smf-item__col--label{
  border-bottom: none;
  border-right: none;
  flex: 0 0 315px;
  max-width: 100%;
  padding: 1.5rem 2.5rem 1.5rem;
  background-color: transparent;
  border-top:none;
}
.smf-form--business .wp-block-snow-monkey-forms-item .smf-item__col--controls {
  flex: 1 1 100%;
  max-width: 100%;
  padding: 0 2.5rem 2.5rem;
  border-bottom:0.2rem solid #dddddd;
  display: flex;
  align-items: center;
}
.smf-form--business .wp-block-snow-monkey-forms-item:first-of-type .smf-item__col--controls{
  border-top: none;
}
.smf-form--business .wp-block-snow-monkey-forms-item .smf-item__col--controls .smf-item__controls{
  width:100%;
}
.smf-item__label__text{
  color: #333333;
  
  font-size:2.6rem;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0em;
}
.smf-item__label__text strong{
  margin-left:2.0rem;
  display:inline-block;
  border:1px solid #c40013;
  padding:0.5rem 1.5rem;
  color: #c40013;
  font-size:2.2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0em;
}
.smf-form .smf-item .smf-text-control__control{
  padding:1.0rem 2.5rem;
  color: #333333;
  font-family: 'Noto Sans JP', 'Noto Sans', 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;
  
  font-size:2.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.smf-form .smf-item .smf-textarea-control__control{
  padding:1.0rem 2.5rem;
  color: #333333;
  font-family: 'Noto Sans JP', 'Noto Sans', 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;
  
  font-size:2.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.smf-form .smf-item .smf-select-control__control{
  padding:1.0rem 4.5rem 1.0rem 2.5rem;
  color: #333333;
  font-family: 'Noto Sans JP', 'Noto Sans', 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;
  
  font-size:2.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.smf-form .smf-item .smf-select-control__toggle:before {
  right: 1.6rem;
}
.wp-block-heading{
  padding-top:2.5rem;
  color: #333333;

  font-size:2.8rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.wp-block-heading ~ p{
  color: #333333;

  font-size:2.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.smf-item__controls li{
  color: #333333;

  font-size:2.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
@media (min-width: 40em) {
  .smf-form--business .smf-item {
    border: 1px solid #FFFFFF;
    margin-bottom: 0;
    margin-top: 0;
  }
  .smf-form--business .smf-item__col--label{
    border-bottom: none;
    border-right: none;
    flex: 0 0 315px;
    max-width: 315px;
    padding: 20px 30px;
    background-color: #E8F3F9;
    border-top:none;
  }  
  .smf-form--business .wp-block-snow-monkey-forms-item .smf-item__col--controls {
    flex: 1 1 calc(100% - 315px);
    max-width: 80%;
    padding: 12px 35px;
    border-bottom: 1px solid #dddddd;
    display: flex;
    align-items: center;
  }
  .smf-form--business .wp-block-snow-monkey-forms-item:first-of-type .smf-item__col--controls{
    border-top: 1px solid #dddddd;
  }
  .smf-form--business .wp-block-snow-monkey-forms-item .smf-item__col--controls .smf-item__controls{
    width:100%;
  }
  .smf-item__label__text{
    color: #333333;
    
    font-size:16px;
    font-weight: 500;
    line-height: 1.875;
    letter-spacing: 0em;
  }
  .smf-item__label__text strong{
    margin-left:10px;
    display:inline-block;
    border:1px solid #c40013;
    padding:5px 13px;
    color: #c40013;
    font-size:14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0em;
  }
  .smf-form .smf-item .smf-text-control__control{
    padding:10px 20px;
    color: #333333;
    font-family: 'Noto Sans JP', 'Noto Sans', 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;

    font-size:16px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .smf-form .smf-item .smf-textarea-control__control{
    padding:10px 20px;
    color: #333333;
    font-family: 'Noto Sans JP', 'Noto Sans', 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;

    font-size:16px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .smf-form .smf-item .smf-select-control__control{
    padding:10px 20px;
    color: #333333;
    font-family: 'Noto Sans JP', 'Noto Sans', 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;

    font-size:16px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .smf-form .smf-item .smf-select-control__toggle:before {
    right: 10px;
  }
  .wp-block-heading{
    padding-top:15px;
    color: #333333;

    font-size:18px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .wp-block-heading ~ p{
    color: #333333;

    font-size:16px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .smf-item__controls li{
    color: #333333;

    font-size:16px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
}


