/*
Template:ystandard
Theme Name:reindeer
*/
body{
width:100%;
height:100%;
margin:0 auto;
padding:0;
font-size:16px;line-height:1.75em;
background:#fff;
   overflow-x: hidden;
	  font-family: "Kiwi Maru", serif;
  font-weight: 400;
}

a{text-decoration:none;}

ol, ul {
    margin: 0;
    padding:0;
}
li{list-style:none;}

h1, h2, h3, h4, h5, h6 {
    margin: 0em;
    padding: 0;
    line-height: 1.5;
    letter-spacing: .05em;
}

h1+h2, h2+h3, h3+h4, h4+h5, h5+h6 {
    margin-top: 0;
}

.entry-content h1+h2, .entry-content h2+h3, .entry-content h3+h4, .entry-content h4+h5, .entry-content h5+h6 {
    margin-top: 0em;
}

h2{color: #65aadd;
    font-size: 2.5em;
    font-family: "Quicksand", sans-serif;
    font-weight: bold;
    text-align: center;margin-bottom:0.5em; margin-top: -0.25em;}
h3{font-size: 1.5em;}

h3, h4, h5, h6 {
   font-weight:400;
}

td, th {
    border-right:none;
    border-bottom:none;
}

tr {
    border-left:none;
}

amp-img, img {
    vertical-align: bottom;
}

.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
    margin: 0em;}

.entry-content>* {margin-top:0;}

.back-to-top__content {
	box-shadow:none;
width: 85%;
    padding: 0em;}

#back-to-top {
       bottom: 1.5vh;
    right: -4vh;
}
.footer-copy{margin:0 auto;width:100%;color:#ffffff;}
#footer-poweredby{display:none;}

.ponly{display:none;}
.monly{display:block;}

.container {
    margin-right: auto;
    margin-left: auto;
    padding-right: 0em;
    padding-left: 0em;
    max-width: none;
}

.global-nav__container {
 font-family: "Quicksand", sans-serif;
}

.site-branding {
    padding: 0.75em 2em 0.75em 0;
}

.site-branding .site-title {margin-left:0.75em;}

.site-header button {
    top: 15%;
}

.main-visualwrap
{margin:80px auto 40PX;
width:100%;
padding:0 5%;}


.main-visual {
    background: url(http://test-reindeer.mathgraphics.space/wp-content/uploads/2025/03/gaikan2.webp) no-repeat no-repeat left top / cover;
   display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    flex-direction: column;
    text-align: right;
    font-weight: bold;
    border-radius: 0.75em;
    max-width: 100%;
    height: 30vh;
    padding: 0 3% 3% 0%;
}


.main-visual img{max-width:60%;}


.sub-visual {margin: 0 auto;
	padding:0 1em;
    text-align: center;
	max-width: 100%;
}

.sub-visual img{max-width:90%;text-align:center;}

.facilitytxt{margin:0 auto 1em;width:100%;max-width:960px;padding:0 1em;}

.swiper-backface-hidden .swiper-slide {
  opacity: .3;
  transform: scale(.8) translateZ(0);
  -webkit-transform: scale(.8) translateZ(0);
  transition: transform 0.6s, opacity 0.6s;
  -webkit-transition: -webkit-transform 0.6s, opacity 0.6s;
  will-change: transform, opacity;
}
.swiper-slide img {
  height: auto;
  width: 100%;
	border-radius:1em;
	display: block;
    margin-bottom: 25px;
}
.ssinner{
    transition: 0.7s;
}

.ssinnerimg{display: block;
    width: 100%;
    margin-bottom: 25px;
    border-radius: 1em;}


.swiper-slide.swiper-slide-active {
  opacity: 1;
  transform: scale(1); 
  z-index: 1; 
}

.swiperwrap{margin:0em auto 2em;}


.swtitle{margin:0.5em auto 0;text-align:center;}
.swtitle p{font-size: 0.9em;
    line-height: 1.5;
    text-align: justify;}

.swtitle h3 {
  background: #65aadd;
    padding: 0.25em 0.75em;
    color: #ffffff;
    display: block;
    border-radius: 1em;
    font-size: 1em;
    margin: 0.5em 0 0;
    width: 100%;
}

.swiper-slide-prev,
.swiper-slide-next,
.swiper-slide-duplicate-prev,
.swiper-slide-duplicate-next {
  opacity: .3;
  transform: scale(.8) translateZ(0);
  -webkit-transform: scale(.8) translateZ(0);
  transition: transform 0.6s, opacity 0.6s;
  -webkit-transition: -webkit-transform 0.6s, opacity 0.6s;
  will-change: transform, opacity;
}


.swiper-slide-active {
  z-index: 2;
}



/*
.content__main {
       max-width: 100%;
}
*/

section{width:100%;max-width:960px;margin:auto;padding:0;}

.bg_w{background:#ffffff;}
.bg_b{background:#f4eadf;}

#breadcrumbs{padding-left:1em;}

.content-section {
    padding: 40px 1em;
    text-align:justify;
}

.content-section.last {
    padding: 40px 1em 0;
    text-align:justify;
}

.introtxt{text-align:justify;}
	.introtxt p{margin-block-start: -0.25em;}

.topillwrap{width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: baseline;margin-top:2em;}
.l_illwrap,.r_illwrap{width:48%;}
.l_ill{text-align:left;}
.r_ill{text-align:right;}

.docprofile{display:flex;flex-wrap:wrap;margin-top:4em;flex-direction: column;}
.topdimg{width:100%;text-align: center;}
.topdimg img{min-width:270px;}
.topdtxt {
    width: 100%;
    margin-top: 1em;
}

.topdtxt h3{font-weight:400;text-align:center;}
.topdtxt h3 span{font-size:0.75em;padding-right:0.5em;vertical-align:initial;}
.topdtxtin{border-bottom: 2px dotted #65aadd;
    margin-bottom: 1em;}
.topdtxt h4{font-weight:400;}


.ys-posts__content {
    padding: 0 2em;
}

.ys-posts.is-card .ys-posts__text>* {
    margin-top: -0.25em;
}
.ys-posts__title{font-size: 1em;}

	.singlewrap{padding:0 1em;}

.pretable{border-top: none;
    font-weight: 100;
    margin-bottom: 1em;    line-height: 1.25;}
.pretable th{background:none;width:100%;display:block;padding: 0.5em 1em 0;}
.pretable td{width: 100%;
    display: block;
    border-bottom: 1px dotted #cccccc;
    padding-bottom: 0.75em;margin-bottom: 0.25em;}
.preul{font-weight:100;}
.preul li{padding-left:1em;padding-bottom: 0.5em;}
.preul li:first-child{padding-top:0.5em;}
.preul li span{margin-left:2em;}
.arrow-btn-right{text-align:center;margin:40px auto 0;}

.arrow-btn-right a{
  position: relative;
  text-decoration: none;
  display: inline-block;
  color:#65aadd;
  border:2px solid #65aadd;
	border-radius:3em;
  padding: 10px 40px 10px 30px;
  text-align: center;
  outline: none;
  transition: ease .2s;
	width: 65%;
    font-size: 1.25em;
    font-weight: 500;
}

.arrow-btn-right a:hover{
	background:#ffffff;
  color: #65aadd;
  border:1px solid #65aadd;
}


/* 矢印が右に移動 */
.arrow-btn-right a::after{
    content: '';
    position: absolute;
    top:42%;
    right: 20px;
    width: 5px;
    height: 5px;
    border-top: 2px solid #65aadd;
    border-right: 2px solid #65aadd;
    transform: rotate(45deg);
    transition: all .3s;
	color: #65aadd;
}

/*hover時矢印移動*/
.arrow-btn-right a:hover::after{
  right: 16px;
  color: #65aadd;
  border-top: 2px solid #65aadd;
  border-right: 2px solid #65aadd;
}

/*Q&A*/
.cp_qa03 .cp_actab {
  position: relative;
  width: 100%;
  margin: 0 0 1em 0;
  color: #65aadd;
}
.cp_qa03 .cp_actab input {
  display: none;
}

.cp_qa03 .cp_actab.last {
  margin: 0 ;
}

/* 質問 */
.cp_qa03 .cp_actab label {
 font-weight: 400;
    line-height: 1.6em;
    position: relative;
    display: block;
    margin: 0 0 0 0;
       padding: 2em 2em 1.7em 3.5em;
    cursor: pointer;
    text-indent: 1em;
    border-radius: 0.75em;
    background: #ffffff;
	color:#333333;
}
.cp_qa03 .cp_actab label::before {
content: 'Q';
    font-family: "Quicksand", sans-serif;
    font-weight: 600;
    font-size: 1.5em;
    margin-left: -2em;
    padding: 0.25em 0.5em 0.3em;
    vertical-align: baseline;
    color: #ffffff;
    background: #65aadd;
    border-radius: 100%;
    margin-right: 0.5em;
}
.cp_qa03 .cp_actab label:hover {
  color: #65aadd;
  transition: all 0.5s;
}
/* --質問の＋アイコン */
.cp_qa03 .cp_actab label::after {
  position: absolute;
  top: 0;
  right: 0;
  content: '+';
  font-size: 1.7em;
  font-weight: bold;
  line-height: 3em;
  display: inline-block;
  width: 2em;
  height: 2em;
  transition: transform 0.3s;
}
/* 答え */
.cp_qa03 .cp_actab .cp_actab-content {
  position: relative;
  overflow: hidden;
  max-height: 0;
  padding: 0 0 0 0.5em;
  border-radius: 0 0 0.75em 0.75em;
  transition: max-height 0.2s;
}
.cp_qa03 .cp_actab .cp_actab-content::before {
  position: absolute;
  content: 'A';
	 font-family: "Quicksand", sans-serif;
	font-weight:500;
  font-size: 1.5em;
  margin: 0.4em 0 0 0;
  padding: 0.25em 0.5em;
		    color: #ffffff;
    background: #ffa6d2;
    border-radius: 100%;
	
}
.cp_qa03 .cp_actab .cp_actab-content p {
  margin: 1em 1em 1em 3.5em;
	 color: #333333;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa03 .cp_actab input:checked ~ .cp_actab-content {
 max-height: 40em;
    background: #ffffff;
    border: 16px solid #ffffff;
	border-radius: 0px 0px 0.75em 0.75em;
	margin-top: -1em;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa03 .cp_actab input:checked ~ label {
  color: #333333;
  border-radius: 0.5em 0.5em 0 0;
}
/* 質問をクリックした時の+の動き */
.cp_qa03 .cp_actab input[type=checkbox]:checked + label::after {
  transform: rotateZ(45deg);
  transform-origin: 50% 50%;
}


.map{
    width: 100%;
    position: relative;
  padding-top:75%;
	/*margin:-56.25% auto 1em;*/
}
.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

h4.accadd{text-align:center;margin-top:1em;}


/* お問合せ */

.contactwrap{    border: 2px solid #65aadd;
    border-radius:0.75em;padding:2em 1em;max-width:960px;
    text-align: center;margin-bottom: 40px;
}

table.contactt{border-collapse: collapse;
    border-spacing: 0;
    max-width: 840px;
   margin: 0 auto;
border-top:none;}

.contactt th{
 text-align:left;
	font-size:1em;
 color:#444;
 padding: 8px;
 width:30%;
}

table.contactt th{text-align:center;margin-top: 1em;}
table.contactt th.confirst{margin-top: 0em;}


/*通常欄*/
.contactt td{
 font-size:1em;
}
.contactt td.koumoku{
 font-size:1em;
}

.contactt th p,.contactt td p{margin:0;}

.contactt th p span{
    font-weight: 500;
    font-size: 1.1em;
}

.contactt input,.contactt textarea{border:none;}

.spamtxt1{color:#65aadd;}

/*横の行とテーブル全体*/
.entry-content .contactt tr,.entry-content table{
 /*border:solid 1px #d7d7d7;*/
	border:none;
}

/*送信ボタンのデザイン変更*/
#formbtn{
     padding: 12px 16px;
 max-width:350px;
 background:#65aadd;
	border:2px solid #65aadd;
 color:#ffffff;
 font-size:16px;
 font-weight:bold;	 
 margin:24px auto 0;
	border-radius:3em;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:#abc5d9;
 color:#ffffff;
 border:2px solid #abc5d9;
}

input[type=email], input[type=search], input[type=text], input[type=url],  input[type=tel],select, textarea {
    display: block;
    width: 100%;
    -webkit-appearance: none;
}

table.contactt th{
background:none;
}

table.contactt th,table.contactt td {
 display:block;
 width:100%;
 border-top:none;
 -webkit-box-sizing:border-box;
 -moz-box-sizing:border-box;
 box-sizing:border-box;	
    padding: 0 0 4px;
	color:#65aadd;
}


div.wpcf7 .ajax-loader{display:none;}


span.caution{font-size:10px;display:block;
    margin-top: 4px;}

.wpcf7-spinner{
	width:0;
	margin:0;
}

.wpcf7-list-item {
    display: inline-block;
    margin: 0 4px 0 0;
}

/*footer*/
.f_wrap{text-align:center;margin:0 auto;width:100%;padding: 0 1em;}
.f_wrap img{width:100%;max-width:80%;margin:0 auto;}
.footer-main>* {
    margin-top: 3em;
}

.footer-main {
    padding-top: 2em;
}

.fad{margin-top:1.5em;}

.back-to-top__content {
    display: block;
    padding: 0.75em;
    box-shadow:none;
    line-height: 1;
    white-space: nowrap;
    background:none;
    color:none;
}

.back-to-top__content img{width:40%;}

/*予約ボタン*/
.reserve_b a{
width: 100%;
    max-width: 480px;
    padding: 24px 48px;
    display: block;
    border: 2px solid #66aadd;
    border-radius: 60px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    letter-spacing: 0.08em;
    font-size: 2rem;
    font-weight: 500;
    background: #66aadd;
    transition: all .2s;
    position: relative;
    z-index:0;
    margin: 120px auto;
}
.reserve_b a:after{
	content: "";
    width: 10%;
    height: 100%;
    display: block;
    transition: all .2s cubic-bezier(0.5, 1, 0.66, 1);
    vertical-align: middle;
    background: url(http://test-reindeer.mathgraphics.space/wp-content/uploads/2025/09/reindeer_bt.svg) center / 100% no-repeat;
    position: absolute;
    opacity: 0;
    z-index: -1;
}
.reserve_b a:hover{ background:#fff; color:#66aadd; }
.reserve_b a:hover:after{ opacity:1; }

.reserve_b a:after{
	top:0;
	left:50%;/*左右を中央寄せ*/
	transform:translateX(-50%);/*左右を中央寄せ*/
}
.reserve_b a:hover:after{
	top:-73px;
}
.reservewrap{margin: 0 auto;text-align:center;}


/*facility*/
.swiper-slide img {
  height: auto;
  width: 100%;
}

@media screen and (min-width:768px) {
	
.ponly{display:block;}
.monly{display:none;}
	
.header-type--row1 .site-branding {
    padding: 1.5em 0;
}
	
	h2{margin-top:0;}
	
.main-visualwrap
{margin: 80px auto 4rem;}
	
	
.main-visual {
	 background: url(http://test-reindeer.mathgraphics.space/wp-content/uploads/2025/03/gaikan2.webp) no-repeat center center/cover;
	   display: flex;
      align-items: flex-end;
    justify-content: flex-start;
    flex-direction: column;
    text-align: center;
    font-weight: bold;
    border-radius: 1em;
    max-width: 100%;
    height: 90vh;
    padding: 5% 6% 0 0;
	
}
	
.main-visual img{max-width:28%;}	
	
.sub-visual {
	padding:0 2%;
}
	
.sub-visual h1 img{
	width:50%;
}	
	
.facilitytxt {
    margin: 1em auto 2em;
}	
	
	.swtitle h3{
		text-align:center;
    padding: 0.5em 1em;
    border-radius: 1.5em;
    font-size: 1.2em;
    margin: 1em auto 0;
		width:100%;
	max-width:300px;}
	.swtitle p{font-size:1em;text-align:center;}
	

.header-type--row1 .global-nav {
    align-items: center;
    margin-left: auto;
    margin-right: 5%;
}
	.site-branding .site-title {margin-left: 3rem;}
	
.global-nav__menu>.menu-item>a {
    font-size: 1.1em;
}	
	
.l_illwrap,.r_illwrap{width:30%;}
	
	.introtxtwrap{margin:-0.5em auto 0;text-align:center;}	
.introtxt{text-align:justify;display:inline-block;}
	.introtxt h5{text-align:center;}

.content-section {
    padding: 80px 0px;
    text-align:justify;
}

.content-section.last {
    padding: 80px 0px 0;
    text-align:justify;
}
	
.topillwrap {
    margin-top: -2.5em;
}	
	
	
.ys-posts__content {
    padding: 0;
}	
	
	
.docprofile{display:flex;flex-wrap:wrap;margin-top:4em;flex-direction: row;}
.topdimg{width:35%;text-align:left;}
.topdimg img{min-width:270px;max-width:270px;}
.topdtxt{width:65%;margin-top:0;}
	
.topdtxt h3{text-align:right;}

.pretable{border-top: none;
    font-weight: 100;
    margin-bottom: 1em;    line-height: 1.25;}
.pretable th{background:none;width:15%;display: table-cell;padding: 0.5em 1em;}	
.pretable td{background:none;width:85%;display: table-cell;border-bottom:none;padding: 0.5em 1em;}	
.arrow-btn-right a{
  position: relative;
  text-decoration: none;
  display: inline-block;
  color:#65aadd;
  border:2px solid #65aadd;
	border-radius:3em;
  padding: 10px 40px 10px 30px;
  text-align: center;
  outline: none;
  transition: ease .2s;
	width: 25%;
}
	
/* 質問 */
.cp_qa03 .cp_actab label {
    border-radius: 1em;
}
	
/* --答えの高さ */
.cp_qa03 .cp_actab input:checked ~ .cp_actab-content {
	border-radius: 0px 0px 1em 1em;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa03 .cp_actab input:checked ~ label {
  border-radius: 1em 1em 0 0;
}	
	
h4.accadd{text-align:center;margin-top:1.5em;}	
	
/* お問合せ */

.contactwrap{
    border-radius:1em;
}

	
.map{
    width: 100%;
    position: relative;
  padding-top: 41.6667%;
	    margin-bottom: 1em;
	/*margin:-56.25% auto 1em;*/
}		
	
		.fibox{margin:0 auto;text-align:center;}	 
	.fibox img{width:75%;}	
	
#back-to-top {
       bottom: 3vh;
    right: -1vh;
}
	
/*footer*/
.footer-main {
    padding-top: 4em;
}
.f_wrap img{width:100%;max-width:fit-content;margin:0 auto;}
	
	
}


@media screen and (min-width:1024px) {
.site-branding .site-title {
    margin-left: 5rem;
}	

.main-visual img{max-width:27%;}	

	.fibox img{width:100%;}	
	
.main-visualwrap {
    margin: 80px auto 5rem;
}

.topillwrap {
    margin-top: -2.5em;
}	
	
}

@media screen and (min-width:1440px) {
	
    .sub-visual h1 img{
	width:auto;
}	
.main-visual img{max-width:100%;}	
	

.topillwrap {
    margin-top: -4.5em;
}		
	
}
