﻿@charset "utf-8";

.double_line  {
  color: #FB9443;
  text-align: center;
  padding: 5px;
  border-top: 3px double #FB9443;
  border-bottom: 3px double #FB9443;
 font-size:20px;
}
 


.tm01 {
margin:20px 0 10px;
font-size:16px;
}

.tm01 span{
background:#e6f6fb;
padding:2px 5px;
margin-right:0.5em;
font-weight:bold;
}


.hc-box	b{
color:#e60012;
}


.hc-box-a{
background:#F7F7F7;
padding:20px 40px 30px;
margin:20px 0 0;
}

.hc-box-b{
background:#F7E5F0;
padding:20px 40px 30px;
margin:20px 0 0;
}
.hc-box h2{
padding:0;
margin:0 0 10px;
}

.hc-box-c{
background:#F7F7F7;
padding:20px 40px 40px;
margin:20px 0 0;
}

.hc-box-d{
background:#F7E5F0;
padding:20px 40px 40px;
margin:20px 0 0;
}

.hc-box-e{
background:#fff;
padding:20px 40px 20px;
margin:40px 0 0;
}

.hc-box-f{
margin:40px 0 20px;
padding:10px 0;
font-size:22px;
text-align:center;
border-top:2px solid #000;
border-bottom:2px solid #000;
}

.box-hm {
margin:20px 0;
padding:20px;
background:#f7f7f7;
border-radius:10px;
}
.sec-c10 {
margin:0;
padding:0 0 20px;
background:#f7f7f7;
}

.sec-c11 {
margin:0;
padding:20px 0 20px;
background:#f7fcfe;
}

.att-sub {
margin:-30px 0 10px;
font-size:18px;
}

.arrow_box3 {
	position: relative;
background: #D11C2C;
	border: 4px solid #DDF8C6;
font-size:22px;
font-weight:700;
color:#fff;
text-align:center;
padding:10px 0;
}
.arrow_box3:after, .arrow_box3:before {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.arrow_box3:after {
	border-color: rgba(209, 28, 44, 0);
	border-top-color: #D11C2C;
	border-width: 30px;
	margin-left: -30px;
}
.arrow_box3:before {
	border-color: rgba(221, 248, 198, 0);
	border-top-color: #DDF8C6;
	border-width: 36px;
	margin-left: -36px;
}

@media(max-width:767px) {
.hc-box-a{
padding:20px 10px 30px;

}

.hc-box-b{
padding:20px 10px 30px;
}

.hc-box-c{
padding:20px 10px 40px;
margin:20px 0 0;
}

.hc-box-d{
padding:20px 10px 40px;
}

.hc-box-e{
padding:20px 10px 20px;
margin:40px 0 0;
}

.hc-box-f{
margin:40px 0 20px;
padding:10px 0;
font-size:22px;
text-align:center;
border-top:2px solid #000;
border-bottom:2px solid #000;
}

.tm01 span{
display:block;
margin-right:0;

}

}




/* --- お問い合わせフォーム --- */
/* デザインカスタマイズ */
div.wpcf7 { background:#FCF7FF; padding:40px 60px; -moz-border-radius:10px; -khtml-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; margin:0 0 0 ; width:100%;}

div.wpcf7 p { padding:20px 20px 0; margin:0; font-size:13px;  line-height:18px;}
div.wpcf7 input{ margin-top:0px; border:1px solid #ccc; padding:8px; font-size:14px; }
div.wpcf7 textarea { margin-top:0px; border:1px solid #ccc; padding:8px; font-size:14px; }
div.wpcf7 textarea { 
width:100% !important;
 height:200px !important; 
 }
div.wpcf7 input.wpcf7-submit {
   cursor:pointer; color:#fff; font-weight:bold; font-size:14px; width:180px; height:45px; margin:0 auto; display:block;
   -moz-border-radius:5px; -khtml-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;
   background:#888; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #808080; border:1px solid #666;
}
div.wpcf7 input.wpcf7-submit:hover { background:#006080; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #007ea8; border:1px solid #006080; }
.wpcf7 input.wpcf7-submit:active { box-shadow:none; bottom:-2px; position:relative; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border:1px solid #009de1; }

div.wpcf7 input.imp1{ width:55% !important; }

div.wpcf7 input.imp2{ width:20% !important; }

div.wpcf7 input.imp3{ width:100% !important; }

div.wpcf7 .bttn  {
 margin:20px auto 30px;
}
@media (max-width:767px) {
div.wpcf7 { background:#F5F7F9; border:1px solid #ddd; padding:0px; -moz-border-radius:10px; -khtml-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; margin:0 0 0 ; width:100%;}

div.wpcf7 p { padding:20px 8px 0;}

div.wpcf7 input.imp1{ width:100% !important; }

div.wpcf7 input.imp2{ width:32% !important; }

div.wpcf7 input.imp3{ width:100% !important; }
}

table#inquiry2  {
 width: 100%;
        border:  none;
        border-collapse: collapse;
        border-spacing: 0;
        margin: 0 0 20px;
        font-size:16px;
        line-height: 1.5em; 
}


/*見出し欄*/
#inquiry2 th{
 text-align:left;

 font-weight:400;
 padding:5px 5px 3px;
 width:25%;

 border:none;
 vertical-align: middle;
}
/*通常欄*/
#inquiry2 td{
 padding:3px 5px 3px;
 border:none;	
 vertical-align: middle;
}

#inquiry2 td.f-btn {
 padding:7px 0 3px ;
}

#inquiry2 td.rc{
 padding:12px 0px 6px;

 border:none;	
 vertical-align: middle;
}



/*横の行とテーブル全体*/
.entry-content #inquiry2 tr,.entry-content table{
 border:solid 1px #d7d7d7;	
}
/*必須の調整*/
.haveto{
 font-size:10px;
 padding:5px;
 background:#ff9393;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*任意の調整*/
.any{
 font-size:10px;
 padding:5px;
 background:#93c9ff;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}


.wpcf7-list-item-label{
font-weight:400;
}

input[type="radio"],input[type="checkbox"]{
  position: relative !important;
  top: 0.1em !important;
}

/*送信ボタンのデザイン変更*/
#formbtn{
line-height:1.4;
 display: block;
 padding:10px ;
 width:300px;
 background:#666666;
 color:#fff;
 font-size:16px;
 font-weight:400;	 
 border-radius:2px;
 margin:25px auto 0;
 border:2px solid #666;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.4);
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:#fff;
 color:#666666;
 border:2px solid #666666;
}

.screen-reader-response , .wpcf7-validation-errors{
 color:#e60012;
 font-size:16px;
}

.red {
color: #E9424A;
}

.prv-tx2{
 margin:-10px 0 30px;
font-size:15px;
text-align:center;
}

.prv-tx2 a{
color:#4285F4;
}

.prv-tx2 a:hover{
color:#E8F0FE;
}
a.lk1 {
color: #6A90A3;
}

a.lk1:hover {
color: #999;
}

div.wpcf7 input.textsp2{ 
width:30%;
 }

@media screen and (max-width:480px) {

div.wpcf7 {  
 padding:20px 5px 20px; 
}

div.wpcf7 input.textsp2{ 
width:40%;
 }

#inquiry2 th , #inquiry2 td{
width:100%;
display:block;
}

#inquiry2 th{
margin-top:5px;
margin-bottom:-8px;
}

.prv-tx2 {
text-align:left;
padding-left:10px;
padding-right:10px;
}

}


.grecaptcha-badge {
  visibility: hidden;
}

.form-box  {
margin-top:20px;
}

.form-box p  {
font-size:16px !important;
}

.sec-c1 {
 margin:0 0 40px;
}
.attention {
    position: relative;
    display: inline-block;
    padding: 0 30px;
    margin-bottom: 36px;
   font-size:40px;
color:#01A2C1;
}
       
.attention:before {
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    width: 1px;
    height: 100%;
    background: #00a1e9;
    border-radius: 3px;
    transform: rotate(-25deg);
}
       
.attention:after {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 1px;
    height: 100%;
    background: #00a1e9;
    border-radius: 3px;
    transform: rotate(25deg);
}

.sec-c1 p{
margin:20px 0 0;
 font-size:18px;
}

.ctz{
font-size:26px;
}

.ctz span{
color:#FF5291;
font-size:130%;
}

.ctz2{
font-size:26px;
margin-top:20px;
}


.c-marker {
    background: -webkit-linear-gradient(left, rgb(255, 255, 127) 50%, transparent 50%);
    background: -moz-linear-gradient(left, rgb(255, 255, 127) 50%, transparent 50%);
    background: linear-gradient(left, rgb(255, 255, 127) 50%, transparent 50%);
  background-repeat: no-repeat;
  background-size: 200% .8em; 
    background-position: 100% .8em;
    transition: 2.0s;
  font-size:36px;
}
.c-marker.is-active{
    background-position: 0% .8em;
}

.video-yt2 {
   margin:30px 0 0;
}


.video-yt3 {
    background:#FFF2F2;
   margin:40px 0 40px;
   padding:20px 40px 40px;
border-radius:10px;
}

.sec-c2b {
margin:30px 0 0;
padding:0 0 20px;
 background:#ede6df;
}

.sec-c2c {
margin:0;
padding:0 0 50px;
 background:#ede6df;
}

.img-6001{
max-width:100%;
height:auto;
margin-top:-38px;
}

.ym-box5 {
font-size:46px;
font-weight:bold;
color:#000;
padding:30px 0 0;
line-height:1.4;
}

.ym-box5 span{
background: linear-gradient(transparent 50%, #ffff66 0%);
}

.v-box30 ol {
text-align:left;
margin:-20px 0 0 -40px;

}

.v-box30 ol li{
font-size:20px;
 position: relative;
  border-bottom:2px dotted #999;
padding:8px 0 8px 0;
list-style-position:inside;
}

.v-box30 ol li.last {
           border-bottom: none;
  padding-bottom:0;
 }


.v-box30 p {
 margin:0;
padding:0 0 0 1.3em;
text-align:left;
font-size:18px;
 }

.v-box31 {
 margin:20px 0 0;
padding:10px;
text-align:left;
font-size:18px;
background:#FDEFF3;
 }

.v-box31 p{
font-size:18px;
line-height:1.4;
 text-indent: -1em;
  padding-left: 1em;
 }


.sec-c2 {
margin:0;
padding:40px 0 20px;
 background:#65AFCA;
}

.sec-c2 h2{
  position: relative;
  margin:0;
  padding:0 0 1.0rem;
  text-align: center;
 font-size:40px; 
color:#fff;
}

.sec-c2 h2:before{
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 5px;
  content: '';
  border-radius: 3px;
  background: #fff;
}

.sec-c2 h2 span {
color: rgb(255, 255, 127);
}

.sec-c3 {
margin:0 auto;
width:80%;
}

.flb{
color:#fff;
font-size:18px;
text-indent: -1em;
   padding-left: 1em;
}

.sec-c2 table {
  border-collapse: collapse;
  margin: 40px 0 20px;
  padding: 0;
  width: 100%;
  table-layout: fixed;
 
}

.sec-c2 table tr {
  background-color: #fff;
  border: 1px solid #65AFCA;
  padding: .35em;
}
.sec-c2 table th , .sec-c2 table td {
  padding: 1em 0 1em 0;
 border-right: 1px solid #65AFCA;
}
.sec-c2 table th {
  font-size: 18px;
  text-align:center;
  color:#fff;
}
.sec-c2 table thead tr{
  background-color: #0051AA;
}

.sec-c2 .max{
   text-align: center;
   font-size: 20px;
    color:#000;
}

.sec-c2 .txt{
   text-align: center;
   font-size: 30px;
   font-weight:bold;
    color:#FF3C82;
}
.sec-c2 .price{
   text-align: center;
    font-size: 20px;
    color:#000;
}

.cp_card {
	width: 100%;
	position: relative;
	background: #ffffff;
	overflow: visible;
	margin: 30px auto;
	padding: 80px 0.5em 20px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.cp_ribbon11 {
	line-height: 50px;
	position: absolute;
	top: 15px;
	display: block;
	width: calc(100% + 20px);
	height: 50px;
	margin-right: -10px;
	margin-left: -18px;
	text-align: center;
	color: #ffffff;
    font-size:20px;
    font-weight:bold;
	background: #F48FB1;
}
.cp_ribbon11:before, .cp_ribbon11:after {
	position: absolute;
	content: '';
}
.cp_ribbon11:before {
	bottom: -10px;
	left: 0;
	width: 0;
	height: 0;
	border-top: 10px solid #F06292;
	border-left: 10px solid transparent;
}
.cp_ribbon11:after {
	right: 0;
	bottom: -10px;
	width: 0;
	height: 0;
	border-top: 10px solid #F06292;
	border-right: 10px solid transparent;
}

.cp_ribbon12 {
	line-height: 50px;
	position: absolute;
	top: 15px;
	display: block;
	width: calc(100% + 20px);
	height: 50px;
	margin-right: -10px;
	margin-left: -18px;
	text-align: center;
	color: #ffffff;
    font-size:20px;
    font-weight:bold;
	background: #FFC107;
}
.cp_ribbon12:before, .cp_ribbon12:after {
	position: absolute;
	content: '';
}
.cp_ribbon12:before {
	bottom: -10px;
	left: 0;
	width: 0;
	height: 0;
	border-top: 10px solid #FF8F00;
	border-left: 10px solid transparent;
}
.cp_ribbon12:after {
	right: 0;
	bottom: -10px;
	width: 0;
	height: 0;
	border-top: 10px solid #FF8F00;
	border-right: 10px solid transparent;
}


/*===========
.scroll-box
===========*/

.scroll-box {
  overflow-x: auto;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}

.scroll-box div img {
  max-width: 100%;
  min-width: 600px;
  vertical-align: top;
}


/*===========
scrollbar
===========*/

.scroll-box::-webkit-scrollbar {
  height: 4px;
}

.scroll-box::-webkit-scrollbar-track {
  background: #eee;
}

.scroll-box::-webkit-scrollbar-thumb {
  background: #aaa;
  border: none;
}

.scroll-box::-webkit-scrollbar-thumb:hover {
  background: #999;
}

@media only screen and (min-width: 601px) {
  .smn {
    display: none;
  }
}

.spo-box  {
 padding:20px;
}

.spo-box h3 {
 margin-top:10px;
}

.spo-box h3 span {
color:#FF5291;
}


.spo-box p {
color:#000;
}

.ym-box {
background:#FFF7FE;
margin:0 0 10px;
padding:10px 0;
text-align:center;
font-size:18px;
border-radius:10px;
}

.ym-box span{
font-size:130%;
color:#FF3C82;
}

.sec-c3 .fa-plus{
font-size:30px;
color:#fff;
}

.spo-box2  {
 margin-top:10px;
color:#FF5291;
 font-size:18px;
font-weight:bold;
}

.spo-box3  {
 margin-top:10px;
color:#000;
 font-size:16px;
}

.sec-c4{
margin:0;
padding:0;
 background:#fff;
}


.sec-c4 .arrow_box {
	position: relative;
	background: #F2FCFE;
margin:0;
padding:0;
}
.sec-c4 .arrow_box:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(241, 252, 253, 0);
	border-top-color: #F2FCFE;
	border-width: 30px;
	margin-left: -30px;
}

.page-id-3484 .sec-c4 .arrow_box {
	position: relative;
	background: #FFF8E6;
margin:0;
padding:0;
}
.page-id-3484 .sec-c4 .arrow_box:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #FFF8E6;
	border-width: 30px;
	margin-left: -30px;
}




.ym-box2 {
font-size:36px;
font-weight:bold;
color:#000;
padding:50px 0 0;
line-height:1.4;
}

.ym-box2 span{
background: linear-gradient(transparent 50%, #ffff66 0%);
}


.ym-box2:last-child{
padding:40px 0 40px;

}

.sec-c5{
margin:0;
padding:40px 0 0;
 background:#fff;
}

.ym-box3 {
font-size:38px;
font-weight:bold;
color:#000;
padding:20px 0 10px;
line-height:1.4;
}

.ym-box3 span{
color:#FF5291;
}

.sec-c5 p{
font-size:20px;
}

.balloon {
position: relative;
background-color: #FF529F;
margin:0 0 20px;
padding: 5px 20px;
color: #333;
border-radius: 10px;
}

.balloon::before {
content: "";
position: absolute;
border: 12px solid transparent;
border-top: 12px solid #FF529F;
top: 100%;
left: 5%;
}

.balloon p {
margin: 0;
padding: 0;
color:#fff;
font-size:20px;
}

.c-button._shiny {
    display: block;
    position: relative;
    padding: 1.0em;
    background: linear-gradient(#ff74b2 0%, #FF529F 50%, #FF529F 100%);
    box-shadow: 0 3px 0 0 #b2517c ;
    border-radius: 4px;
  margin:20px auto 0;
    font-weight: bold;
    font-size: 20px;
  width:80%;
    color: #fff;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
  transition: 500ms;
font-family:serif;
}
.c-button._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #ffbbd9;
    transition: 500ms;
    animation: shinyshiny 4s ease-in-out infinite;
}

.c-button._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.sec-c5 h2{
  position: relative;
  margin:40px 0 20px;
  padding:0 0 1.0rem;
  text-align: center;
 font-size:40px; 
color:#000;
}

.sec-c5 h2:before{
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 5px;
  content: '';
  border-radius: 3px;
  background: #000;
}

.sec-c5 h2 span{
color:#FF529F;
}

.img-7001{
width:100%;
height:auto;
aspect-ratio: 8 / 6;
 object-fit: cover; 

}

.img-5001{
width:100%;
height:auto;
aspect-ratio: 16 / 9;
 object-fit: cover; 
border-radius: 5px;
box-shadow: 0 1px 5px rgba(39,48,57,.1);
}

.ym-box4 {
margin-top:20px;
}

.ym-box4 p{
  margin:10px 0 0;
  padding:0 ;
  text-align: center;
 font-size:20px;
font-weight:bold; 
color:#000;

}

.flb2{
 margin:20px 0 40px;
color:#000;
font-size:18px;
text-indent: -1em;
   padding-left: 1em;
}

img.ic-sn2 {
width:240px;
height:auto;

}

img.img-1001b{
width:100%;
height:auto;

}





/*================================================
 *  タブレット向けデザイン
 ================================================*/
@media(max-width:1023px) {

}


/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media(max-width:767px) {
.img-sps2 {
margin:20px 0;
 }

.v-box30 p {
 margin:0 0 20px;
padding:0 0 0 1.0em;
text-align:left;
font-size:16px;
 }

}

@media(max-width:480px) {

.v-box30 ol li{
font-size:18px;
 position: relative;
  border-bottom:2px dotted #999;
padding:5px 0 5px 0;
list-style-position:inside;
}



.v-box31 p {
font-size:15px;
 }

.img-sps {
width:70%;
height:auto;
margin:0 15%;
 }


.ym-box5 {
font-size:22px;
font-weight:bold;
color:#000;
padding:30px 0 0;
line-height:1.6;
}

.attention {
    position: relative;
    display: inline-block;
    padding: 0 30px;
    margin-bottom: 36px;
   font-size:26px;
color:#01A2C1;
}

.ctz{
font-size:18px;
}

.ctz2{
font-size:18px;
margin-top:20px;
}

.c-marker {
   font-size:24px;
}

.video-yt3 {
    padding:10px;

}

.c-button._shiny {
    display: block;
    position: relative;
    padding: 1.0em 0.2em;
    background: linear-gradient(#ff74b2 0%, #FF529F 50%, #FF529F 100%);
    box-shadow: 0 3px 0 0 #b2517c ;
    border-radius: 4px;
  margin:20px auto 0;
    font-weight: bold;
    font-size: 16px;
  width:100%;
    color: #fff;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
  transition: 500ms;
font-family:serif;
}

.sec-c1 p{
 font-size:16px;
}

.sec-c2 h2{
  font-size:24px; 
}

.sec-c3 {
margin:0 auto;
width:100%;
}

.flb{
font-size:16px;
}

.sec-c2 table {
  border-collapse: collapse;
  margin: 40px 0 20px;
  padding: 0;
  width: 100%;

}


.sec-c2 table th , .sec-c2 table td {
  padding: 0.5em 0 0.5em 0;
}
.sec-c2 table th {
  font-size: 15px;
  text-align:center;
  color:#fff;
}
.sec-c2 table thead tr{
  background-color: #0051AA;
}

.sec-c2 .max{
   text-align: center;
   font-size: 16px;
    color:#000;
}

.sec-c2 .txt{
   text-align: center;
   font-size: 20px;
   font-weight:bold;
    color:#FF3C82;
}
.sec-c2 .price{
   text-align: center;
    font-size: 16px;
    color:#000;
}

.ym-box {
font-size:16px;
}

.cp_ribbon11 {
    font-size:18px;
}

.cp_ribbon12 {
    font-size:16px;
}

.spo-box h3 {
    font-size:16px;
}

.ym-box2 {
font-size:20px;
}

img.img-1001b{
width:90%;
height:auto;
margin:-20px 5% 0;
}

.ym-box3 {
font-size:24px;
}

.sec-c5 p{
font-size:16px;
}

.balloon {
padding: 5px 10px;
color: #333;
border-radius: 10px;
}


.balloon p {
font-size:16px;
}

.sec-c5 h2{
  font-size:24px; 
}

.flb2{
font-size:16px;

}

img.ic-sn2 {
width:272px;
height:auto;
margin-top:20px;
}

}