@charset "UTF-8";
@import url("grid.css");

:root { /* 色変更される場合は、#以降のカラーコードを変更してください IE非対応 */
    --base-color: #000;
    --link-color: #208ad9;
    --linkhover-color: #208ad9;
    --border-color: #ccc;
    --white-color: #fff;
}

body{
 /*   font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;*/
    font-size: 2rem;
}
img {
	max-width:100%;
	height: auto;/*高さ自動*/
}
a {
    display:block;
    color: var(--link-color);
}
a:hover { 
    color: var(--linkhover-color);
}
a img:hover {
	opacity: 0.8;
}
.underline {
	border-bottom: 3px solid var(--base-color);
	padding-bottom: 0.5rem;
}
.center {
	text-align: center;
}

.bgg{
    background: #f0fbf8;
}

.tright{
    text-align: right;
    margin-right: 10px;
}
.tleft{
    text-align: left;
}

.container{
    padding: 50px 0;
}

.bdr30{
    border-radius: 30px;
/*    box-shadow: 3px 3px #0061c3;*/
}

.mb20{
    margin-bottom: 20px;
}

.fnts{
    font-size: 1.6rem;
}


h2 {
    font-size: 3.0rem;
  padding: 0.3em 0.5em;
  text-align: center;
  color: #fff;
   background-image: linear-gradient(90deg, rgba(4, 202, 255, 1), rgba(144, 245, 154, 1));


}

h3{
    font-weight: bold;
    color: #00683e;
}

h4{
    margin:30px 0;
    font-size: 2.2rem;
}
h4 span{
    display: inline-block;
    color: #00683e;
    padding: 10px;
    border:1px solid #00683e;
}

hr{
    padding-bottom: 20px;
}



.content_inner{
    padding: 20px;
}

.content_inner .col{
    padding: 20px;
    text-align: center;
    background: #fff;
    margin-bottom: 20px;
}

.flowbox{
    border: 1px solid #ccc;
    border-radius: 20px;
    padding: 20px;
    margin-bottom: 30px;
  box-shadow: 0px 10px 10px 0 rgba(0, 0, 0, 0.14);
}


.flowbox h3{
    padding: 10px;
    border-bottom: 1px solid #ccc;
}

table{
    margin: 0 auto;
    background: #fff;
}

table th{
    border:1px solid #0061c3;
    color: #fff;
    background: #208ad9;
    padding: 10px !important;
}

table td{
    border:1px solid #0061c3;
    padding: 10px !important;
}

.q_text{
    padding: 10px;
    border-top:1px solid #208ad9;
    border-bottom: 1px solid #208ad9;
    background: #e8faf2;
}

/*ヘッダー
-------------------------------------*/
.head {
	display: flex;
    flex-direction: row;
    padding: 1rem 0 0 0;
}

.head h1 { 
    padding: 1rem 0;
	font-weight: 700;
	letter-spacing: 3px;
}
.snsbox {
	margin-left: auto;
	font-size: 3.0rem;
	padding: 1rem 0 0 0;
}
nav ul {
	display: flex;
    flex-direction: row;
    justify-content: center;
    list-style: none;
	margin-bottom: 0.5rem;
}
nav li {
    display: block;
    flex: 0 0 15%;
}
nav li a {
    text-decoration: none;
    text-align: center;
}
nav a:hover {
    text-decoration: underline;
}
nav a {
    padding: 1rem;
}


/*メイン画像
-------------------------------------*/
.mainimg img {
	width: 100vw;
}

/*メインコンテンツ
-------------------------------------*/
main {
    margin: 0;
}

/*キャッチタイトル
-------------------------------------*/
h2.catch {
	text-align: center;
	color: #fff;
	margin-bottom: 3rem;
}


.opbox{
    font-family:"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; 
    margin:0 auto;
    border: 5px double #37c647;
    padding: 10px 10px 0 10px;
    width: 400px;
    max-width: 98%;
    background: #fff;
    margin-bottom: 20px;
}

.optitle{
    font-size: 3.0rem;
    color: #009900;
    border-bottom: 1px solid #009900;
    line-height: 7rem;
}

.opname{
    letter-spacing: 1rem;
    font-size: 2.4rem;
    font-family:"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; 
    font-weight: bold;
    background: #37c647;
    padding: 10px;
    color: #fff;

}


.oppriceL{
    font-weight: bold;
    color: #009900;
    font-size: 3.6rem;
    text-align: center;
}

.opprice{
    color: #009900;
    font-size: 3.0rem;
    text-align: center;
}

.opprices{
    font-size: 2.0rem;

}

.optxt{
    font-size: 1.3rem;
    font-weight: normal;
}

#list1{
    width: 100%;
}

#list1 li{
    text-align: left;
    font-weight: bold;
    font-size: 2.4rem;
    color: #00683e;
    list-style: none;
    padding: 10px;
    border-bottom: 1px dotted #258cc2;
}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

/*キフォーム


#box_f{padding:0; position:relative; width:680px; -moz-border-radius:5px; -webkit-border-radius:5px; -border-radius:5px; border-radius: 5px;}
#box_f{background-color:#e9f8ff;/*background:url(../img/form_bk.png) 20px 20px no-repeat,url(../img/form_bk2.png) 890px 20px no-repeat,url(../img/form_bk3.png) 20px 975px no-repeat,url(../img/form_bk4.png) 890px 975px no-repeat,url(../img/back_s.png) 0 0 repeat;*/ margin:0 auto 45px auto; padding:30px 150px 30px 150px;}

.box_f_ind{margin:0 auto 45px auto; padding:30px 150px 30px 150px;}


form dt{font-size:1.6rem;padding:10px 0 0 0; clear:both; width:240px; float:left;}
form dt:before{font-size:1.6rem; color:#0088cb; padding:10px; content:"● "; display: inline-block;}
form .b_non:before{content:"";}
form dd span{font-size:1.4rem !important; color:#898989; padding: 10px}
form dd span.txtbasic{font-size:0.9em!important;color:#ff0000;}
form dd{padding:10px 0 10px 240px; margin:0; font-size:1.6rem;border-bottom: 1px solid #ccc;}

form input.txtbx01{ /* width: 95%; */ width:300px; border: #e1e2e3 1px solid; border-radius: 6px; margin-top: 5px; margin-bottom: 5px;}
form input.txtbx02{width:80px; border: #e1e2e3 1px solid; border-radius: 6px; margin-top: 5px; margin-bottom: 5px;}


form textarea{/* width: 95%; */ width:450px; border: #e1e2e3 1px solid; border-radius: 6px; margin-top: 5px; margin-bottom: 35px;}
form button img:hover{filter:alpha(opacity=70); -moz-opacity:0.7; -khtml-opacity:0.7; opacity:0.7;}

button {width:280px; background:none; border:none; padding:0;}
div.btn {width:280px; margin:0 auto 10px auto;}
button img{width:280px; margin:0; border:none; padding:0; height:47px;}



.btn-blue{
  width: 98%;
  background-color: #1850b7;
}

.btn-blue a{
  text-decoration: none;
  color: #fff;
  font-size: 1.0rem;
  padding: 10px;
  display: block;
}

.box_fc{margin-top:40px!important;}

/*フッター
-------------------------------------*/
footer {
    background-color: var(--white-color);
    padding: 3rem 0;
}
footer h5 {
    border-bottom: 1px solid var(--border-color);
}

#footer-contact-wrap{
    opacity: 0.9;
    z-index: 100;
    position: fixed;
    bottom: 0;
    right: 0;
    color: #fff;
    background: #19cf86;
    width: 100%;
    display: block;
    border-top: 1px solid #fff;
}

#footer-contact-wrap a{
    padding: 10px 0;
    display: block;
    color: #fff;
    text-decoration: none;
}

#footer-contact-inner-sp{
    table-layout: auto;
    width: 100%;
    display: table;
}
#footer-contact-inner-sp div{
    padding: 10px;
    vertical-align: middle;
    line-height: 1.0rem;
    text-align: center;
    font-size: 1.5rem;
    border-left: solid 1px #fff;
    display: table-cell;
    width: 25%;
}

#footer-contact-inner-sp div i{
    font-size: 2rem;
}
#footer-contact-inner-sp div:first-child{
    border: none;
}


.button-r {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 300px;
    margin:0 auto;
    padding: .9em 2em;
    border: none;
    border-radius: 5px;
    box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
    background-color: #009900;
    color: #fff;
    font-weight: 600;
    font-size: 1.6rem;
}

.button-r a{
    color: #fff;
    text-decoration: none;
}

.button-r:hover {
    background-color: #37c647;
}


/*コピーライト
-------------------------------------*/
.copyright {
    text-align: center;
    padding: 0;
    background-color: var(--white-color);
}
.copyright a {
    color: var(--base-color);
    text-decoration: none;
	display: inline-block;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 45px;
    right: 15px;
    z-index: 1000;
}
#pagetop a {
    display: block;
    border: 1px solid #fff;
    background: #19cf86;
    color: var(--white-color);
    width: 50px;
    padding: 10px 5px;
    text-align: center;
}
#pagetop a:hover {
    background: var(--linkhover-color:);
}
@media screen and (min-width: 769px){
.pc{
    display: block;
}
.sp{
    display: none !important;
}

/* PC時はMENUボタンを非表示 */
#open,#close {
    display: none !important;
}

#navi {
    display: block !important;
}
}

@media screen and (max-width: 768px){
.pc{
    display: none;
}
.sp{
    display: block;
}

.head {
    flex-direction: column;
    text-align: left;
    margin-bottom: 20px;
}
.telbox {
    margin-left: 0;
    text-align: center;
}
.head #open,#close  {
    position: absolute;
    top: 28px;
    right: 12px;
    }
nav ul {
    flex-direction: column;
}

nav li {
    padding-top: 0;
    border-bottom: 1px solid var(--border-color);
    margin-bottom: 0;
}
/* スマホ時はMENUボタンを表示 */
#open {
    display: block;
    background: url(../img/button.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    border: none;
    position: absolute;
    top: 20px;
    right: 12px;
}
#close  {
    display: block;
    background: url(../img/button2.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    border: none;
    position: absolute;
    top: 20px;
    right: 12px;
}
/* スマホ時はメニューを非表示 */
#navi {
    display: none;
}


form dt{font-size:14px; line-height:28px; font-weight:normal;  padding:2px 0 0 0; clear:both; width:auto; float:none!important;}
form dd span{display: block;}
form dd{padding:2px 0 10px 10px !important; margin:0; width: 100%}


form input.txtbx01{ width: 95% !important; border: #e1e2e3 1px solid; border-radius: 6px; margin-top: 5px; margin-bottom: 5px;}
form textarea{max-widh:100%;width: 95%;  border: #e1e2e3 1px solid; border-radius: 6px; margin-top: 5px; margin-bottom: 15px;}


}

@media screen and (max-width: 480px){

.opname{
    font-size: 2.0rem;
}

.opprices{
    display: block;
}
}
