/*
Theme Name: satoumi
Theme URI:
Description:
Author:
Version:
*/
.pc{display: block;}
.sp{display: none;}

.slb_details{display: none !important;}

a{color:rgba(0,163,216,1.0);text-decoration: none;}

.block{max-width: 1200px;margin:0 auto;}
.block800{max-width: 800px;margin:0 auto;}

.flex{display: flex;justify-content: space-between;align-items: center;}
.center{text-align: center;}

.tl{font-size: 35px;font-weight: bold;letter-spacing: 0.15em;margin-bottom: 50px;text-align: center;}
.tl_copy{margin: -35px 0 50px;text-align: center;letter-spacing: 0;line-height: 160%}
.sub_tl{font-size: 30px;padding: 10px 0;text-align: center;border-top: solid 1px #000;border-bottom: solid 1px #000;font-weight: bold;}

.bk{background:rgba(0,163,216,0.06);}

.pa{padding:80px 0}

.pt80px{padding:60px 0 0;margin-bottom: 10px;font-size: 30px;letter-spacing: 0.1em;text-align: left;}

.btn {text-align: center;}
.btn a{margin:0 auto;max-width: 480px;display: block;background: #fff;transition: 0.5s;border-radius: 10px;box-shadow: 0 0 10px rgba(0,0,0,0.25);letter-spacing: 0;border: solid 1px #fff;}
.btn a span{display: block;padding:20px 0;position: relative;font-size: 25px;}
.btn a:hover{background: #c3edf6;}
.btn span:after{position: absolute;right: 20px;content: "";background: url(./img/arw.svg) no-repeat center center;top:50%;width: 16px;height: 12px;margin-top: -6px;transition: 0.5s}
.btn input{background: #ee9200;color:#fff;padding:15px 0;text-align: center;display: block;width: 15em;border-radius: 10px;letter-spacing: 0;transition: 0.5s;border: solid 1px #ee9200;cursor: pointer;outline: none;appearance: none;font-size: 20px;margin:0 auto;box-shadow: 0 0 10px rgba(0,0,0,0.25);}
.btn input:hover{background: #ed6500}

table{border-collapse: collapse;border: solid 1px #ccc;width: 100%;background: #fff;}
table th,
table td{border: solid 1px #ccc;padding:15px;vertical-align: top;}
table th{background:rgba(0,163,216,0.15); }

#head{padding:30px;}
#head .flex #name{font-size: 26px;font-weight: bold;}
#head .flex #name a{color:#000;letter-spacing: 0;font-weight: bold;}
#head .flex #name span{font-size: 16px;display: block;font-weight: bold;}
#head #nav .flex{justify-content: flex-end;}
#head #nav .flex li{margin-left: 1em;}
#head #nav .flex li a{color:#000;padding:10px 0;transition: 0.5s;position: relative;}
#head #nav .flex li a:hover{color:rgba(0,163,216,1.0);}
#head #nav .flex li a::after {position: absolute;left: 0;content: '';width: 100%;height: 2px;background: #dbf078;bottom: -12px; /*アンダーラインが現れ始める位置（aタグの下辺からの高さ）*/opacity: 0;visibility: hidden;transition: 0.3s;}
#head #nav .flex li a:hover::after {visibility: visible;bottom: -4px;opacity: 1;}
#head #nav p{margin-left: 1em;}
#head #nav p a{background: #ee9200;color:#fff;padding:10px 0;text-align: center;display: block;width: 12em;border-radius: 100px;letter-spacing: 0;transition: 0.5s;border: solid 1px #ee9200;}
#head #nav p a:hover{background: #ed6500;}

.page-template-page-index #head #nav .flex li:nth-child(1) a::after,
.page-template-page-course #head #nav .flex li:nth-child(2) a::after,
.page-template-page-place #head #nav .flex li:nth-child(3) a::after,
.page-template-page-outline #head #nav .flex li:nth-child(4) a::after,
.page-template-page-gallery #head #nav .flex li:nth-child(5) a::after,
.page-template-page-sponsor #head #nav .flex li:nth-child(6) a::after {visibility: visible;bottom: -4px;opacity: 1;}

#mainview{width: 98%;position: relative;}
#mainview li img{width: 100%;}
#mainview p.copy{position: absolute;bottom:5vw;left: 5vw;width: 30vw;z-index: 9}
#mainview p.img{position: absolute;bottom:5vw;right: 5vw;width: 30vw;z-index: 9}
#second #mainview {background: url(./img/cl_main.png) left center no-repeat;height:29.8vw;background-size:contain; display: flex;justify-content: center;align-items: center;}
#second #mainview h1{font-size: 60px;color:#fff;text-shadow: 0 0 10px rgba(0,163,216,1.0),0 0 10px rgba(0,163,216,1.0);letter-spacing: 0.1em;font-weight: bold;}

.sec01{background: url(./img/sec01_bk.png) no-repeat center bottom;background-size: contain;}
.in_btn li{width: 32%}
.in_btn li a{background: #fff;box-shadow: 0 0 10px rgba(0,0,0,0.25);border-radius: 10px;display: block;transition: 0.5s}
.in_btn li a:hover{background: #c3edf6}
.in_btn li a img{border-radius: 10px 10px 0 0}
.in_btn li a span{display: block; padding:15px 0;text-align: center;font-size: 30px;font-weight: bold;position: relative;}
.in_btn li a span:after{position: absolute;right: 20px;content: "";background: url(./img/arw.svg) no-repeat center center;top:50%;width: 16px;height: 12px;margin-top: -6px;transition: 0.5s}
.in_btn li a:hover span:after{right: 10px}
.in_btn.in_btn2{margin-top: 2%}
.in_btn.in_btn2 li{width: 49%}
.in_btn.in_btn2 li a span{padding:50px 0;}
.in_btn.in_btn3{margin-top: 2%;}
.in_btn.in_btn3 .btn_form2,
.in_btn.in_btn3 .btn_form{width: 49%;}
.in_btn.in_btn3 .btn_form a{background: #ee9200;color:#fff;font-size:30px;font-weight:bold;text-align:center;box-shadow: 0 0 10px rgba(0,0,0,0.25);border-radius:10px;border:solid 1px #fff;display: block;padding: 50px 0;width: 100%;margin: 0 auto;line-height: 100%;transition: 0.5s}
.in_btn.in_btn3 .btn_form a:hover{background: #ed6500;}
.in_btn.in_btn3 .btn_form svg{vertical-align: bottom;margin-right: 5px;width: 35px;}
.in_btn.in_btn3 .btn_form2 a{background: rgba(0,163,216,1.0);}
.in_btn.in_btn3 .btn_form2 a:hover{background: #0081ac;}

.sec02{background: #CAF3FF;background: linear-gradient(90deg,rgba(202, 243, 255, 1) 0%, rgba(226, 255, 244, 0.6) 100%);}

.sec02 .slick {overflow: hidden;margin-bottom: 45px;}
.sec02 .slick li{margin:0 10px;}
.sec02 .slick li img{border-radius: 10px;}
.sec02 .slick li:nth-child(2n) img{border-radius: 10px;margin-top: 10px;}

.sec03{background: url(./img/sec03_bk.png) no-repeat center bottom;background-size: cover;}
.sec03 h2{color:#fff;}
.sec03 h2 span{color:#fff000;font-weight: bold;}
.sec03 ul{align-items: stretch;}
.sec03 li{width: 31%;border-right: dotted 1px #fff;padding-right: 3.22222%;}
.sec03 li:last-child{border:none;}
.sec03 li dl{text-align: center;color:#fff;padding-top: 12px;}
.sec03 li dt{font-size: 30px;line-height: 110%;margin-bottom: 5px;}
.sec03 li dt span{font-size: 20px;}.
.sec03 li dd{letter-spacing: 0;}

.sec04 div.flex{align-items: flex-start;margin-bottom: 50px;}
.sec04 div.flex div.left,
.sec04 div.flex div.right{width: 46%;}
.sec04 div.flex div.left{border-right: dotted 1px #000;padding-right: 4%;width: 50%;}
.sec04 div.flex li{display: flex;align-items: center;margin-top: 20px;}
.sec04 div.flex li a{width:28%;margin-right: 4%;display: block;}
.sec04 div.flex li div{width: 68%;}
.sec04 div.flex li div a{display: block;padding-top: 5px;width: 100%;margin: 0}

.support{background: rgba(219,240,120,0.2);}
.support .flex{flex-wrap: wrap;margin-bottom: 45px;}
.support .flex li a{transition: 0.5s}
.support .flex li a:hover{opacity: 0.8;}
.support .flex li{width: 24%;line-height: 0;margin-bottom: 1%;}

.footer{background: url(./img/foot_bk.png) center bottom no-repeat rgba(219,240,120,1.0);}
.ft_nav{display: flex;justify-content: center;background: #fff;padding:25px 0 ;background: #fff;box-shadow: 0 0 10px rgba(0,0,0,0.25);border-radius: 10px;margin-bottom: 30px;}
.ft_nav li{border-right: solid 1px #8d8d8d;}
.ft_nav li:last-child{border:none;}
.ft_nav li a{padding: 0 10px;display: block;line-height: 100%;color:#000;transition: 0.5s;letter-spacing: 0;}
.ft_nav li a:hover{color:rgba(0,163,216,1.0)}
.conv li{width: 48%;}
.conv li a{box-shadow: 0 0 10px rgba(0,0,0,0.25);display: block;border-radius: 10px;padding:35px;font-size: 30px;line-height: 100%;color:#fff;text-align: center;transition: 0.5s;font-weight: bold;}
.conv li.ins a{background: url(./img/ins_bk.png) right center no-repeat;background-size: cover;}
.conv li.mail a{background: #ee9200;border: solid 1px #fff;}
.conv li a svg,
.conv li a img{width:30px;margin-right: 5px;vertical-align: bottom;}
.conv li.mail a:hover{background: #ed6500;}
#foot p{letter-spacing: 0;}
#foot p.name{font-size: 30px;font-weight: bold;margin: 30px 0 5px}
#foot p.name span{font-size: 20px;display: block;font-weight: bold;}
#foot p.dis{font-size: 18px;}
#foot p.copyright{padding-top: 80px;font-size: 18px;}

.btn_conv{position: fixed;top:50%;right: 0}
.btn_conv a{display: block;background: #ee9200;border: solid 1px #fff;color:#fff;writing-mode: vertical-rl;letter-spacing: 0;padding:20px; box-shadow: 0 0 10px rgba(0,0,0,0.25);border-radius: 10px 0 0 10px;transition: 0.5s}
.btn_conv a svg{width: 21px;margin-bottom: 5px;}
.btn_conv a:hover{background: #ed6500;}

.subnav{display: flex;justify-content:center;background: #fff;padding:20px 0 ;background: #fff;box-shadow: 0 0 10px rgba(0,0,0,0.25);border-radius: 100px;margin: 50px auto 0;max-width: 1200px;}
.subnav li{border-right: solid 1px #8d8d8d;}
.subnav li:last-child{border:none;}
.subnav li a{padding: 0 10px;display: block;line-height: 100%;color:#000;transition: 0.5s;letter-spacing: 0;}
.subnav li a:hover{color:rgba(0,163,216,1.0)}

.cl_sec .flex{align-items: flex-start;}
.cl_sec02 .flex,
.cl_sec04 .flex{flex-direction: row-reverse;}
.cl_sec .flex .ph{width: 48%;}
.cl_sec .flex .copy{width: 48%;}
.cl_sec .flex .copy .wide{width: 580px;}
.cl_sec02 .flex .copy,
.cl_sec04 .flex .copy {display: flex;justify-content: flex-end;}
.cl_sec .flex .copy .wide h3{font-size: 25px;padding-bottom: 10px;font-weight: bold;}
.cl_sec .flex .copy .wide p {margin-bottom: 20px;line-height: 180%;letter-spacing: 0}
.cl_sec .flex .copy .wide table th{width: 40%;}


.page-template-page-place #mainview {background: url(./img/pl_main.png) left center no-repeat !important;background-size: contain!important}
.page-template-page-place .ph img{ border-radius:10px }
.pl_sec .flex{align-items: flex-start;margin-bottom: 30px;}
.pl_sec .ph{margin-bottom: 30px;}
.pl_sec .copy{width: 58%;}
.pl_sec .copy h3{font-size: 25px;font-weight: bold;margin-bottom: 20px;letter-spacing: 0}
.pl_sec .copy p{letter-spacing: 0;line-height: 180%;}
.pl_sec dl{width: 40%;border:dotted 1px #ccc;padding:20px;}
.pl_sec dl dt{font-size: 25px;font-weight: bold;margin-bottom: 10px;}
.pl_sec dl dd{list-style-type: disc;margin-left: 1.1em;text-indent: -1.1em;}
.pl_sec dl dd span{font-size: 80%;margin-right: 5px;}


.page-template-page-outline #mainview {background: url(./img/ou_main.png) left center no-repeat !important;background-size: contain!important}
.ol_sec01 ul{border: solid 10px rgba(219,240,120,1.0);padding:25px 35px;margin: 0 auto;width: 710px;}
.ol_sec01 ul li{font-size: 30px;list-style: disc;margin: 10px 0;margin-left: 1.4em;letter-spacing: 0;}
.ol_sec02 ul{align-items: flex-start;}
.ol_sec02 ul li{width: 48%;text-align: center;}
.ol_sec02 ul li h3{font-size: 35px;text-align: center;padding: 15px 0;line-height: 100%}
.ol_sec02 ul li h3 span{font-size: 20px;display: block;}
.ol_sec02 ul li ul{display: inline-block;}
.ol_sec02 ul li ul li{width: auto;list-style: disc;text-align: left;padding:5px 0 0}
.ol_sec02 table{width: 710px;margin: 30px auto 0;}
.ol_sec02 table th{width: 30%;}


.page-template-page-gallery #mainview {background: url(./img/ga_main.png) left center no-repeat !important;background-size: contain!important}


.page-template-page-sponsor #mainview {background: url(./img/su_main.png) left center no-repeat !important;background-size: contain!important}
.page-template-page-sponsor #foot .support{display: none;}
.page-template-page-sponsor .su_sec .flex{flex-wrap: wrap;}
.page-template-page-sponsor .su_sec .flex li a{transition: 0.5s}
.page-template-page-sponsor .su_sec .flex li a:hover{opacity: 0.8;}
.page-template-page-sponsor .su_sec .flex li{width: 24%;line-height: 0;margin-bottom: 1%;}


.page-template-page-privacy #mainview,
.page-template-page-contact #mainview {background: url(./img/co_main.png) left center no-repeat !important;background-size: contain!important}
.page-template-page-contact #content table{margin-bottom: 30px;}
.page-template-page-contact #content th{width: 30%}
.page-template-page-contact #content th span{float: right;font-size: 80%;color: #fff;background: #cc0000;padding:5px 10px;line-height: 100%;}
.page-template-page-contact #content td input[type="email"],
.page-template-page-contact #content td input[type="text"],
.page-template-page-contact #content td textarea{font-size: 20px;padding: 6px;width:100%;}


.page-template-page-privacy .privacy p{line-height: 180%;letter-spacing: 0}
.page-template-page-privacy .privacy li{list-style: disc;margin: 5px 0 0 1.4em;line-height: 180%;letter-spacing: 0}



/*お知らせ*/
.blog #mainview,
.archive #mainview,
.single #mainview {background: url(./img/ne_main.png) left center no-repeat !important;background-size: contain!important}
#blog .left{width:800px;border-top:solid 1px #ccc;float: left;}
.blogsingle{border-bottom:solid 1px #ccc;padding:25px 0;align-items: flex-start;}
.blogsingle .thum_info{float:left;width:300px;}
.blogsingle .thum_info img{width:300px;border-radius: 0;transition: 0.5s;}
.blogsingle .thum_info img:hover{border-radius: 12px;}
.blogsingle .entrybody{float:right;width:470px;letter-spacing: 0}
.blogsingle .entrybody h2 a{font-size:24px;color:rgba(0,163,216,1);;padding:10px 0;display: block;}
.blogsingle .entrybody .day{color:#888;}
.blogsingle .entrybody .btn{padding-top:15px;}
.blogsingle .entrybody .btn a{width: 80%;}
#blog #sidebar{width:320px;float:right;}
#blog #sidebar li.widget {padding-bottom: 30px}
#blog #sidebar h2{background: rgba(219,240,120,0.5);color:#000;padding:10px 15px;text-align: center;}
#blog #sidebar li li {border-bottom: dotted 1px #ccc;}
#blog #sidebar li li a{display: block;padding:15px 0;transition: 0.5s;}
#blog #sidebar li.widget_recent_entries li a{display: block;padding:15px 0 ;transition: 0.5s;}
#blog #sidebar li.widget_recent_entries li span{display: block;padding:0 0 10px;font-size:10px;color:#999;}
#searchform {padding-top:15px;text-align: center;}
#searchform .screen-reader-text{display: none;}
#searchform #s{padding:5px;width:190px;}
#searchform #searchsubmit{padding:5px;}

.entrysingle img{max-width:100%;width:auto; }
.entrysingle img.aligncenter{margin: 0 auto;}
.single #blog .left{border:none;}
.single #blog .entrysingle h3{background: rgb(0,163,216);color:#fff;padding:10px 15px;font-size:120%;}
.single #blog .day{display: block;text-align: right;padding:10px 0;color:#888;font-size: 90%;}
.single #blog .entrysingle {padding-bottom: 30px;}
.single #blog .entrysingle strong{font-weight: bold;}
.single #blog .entrysingle p{line-height: 200%;padding-bottom: 1em;}
.single #blog .entrysingle p a{color:rgb(0,163,216);text-decoration: underline;}
.single #blog .entrysingle ul {margin-bottom: 1em;}
.single #blog .entrysingle ul li{list-style-type: disc;margin: 0.3em;margin-left: 1.5em;}
.single #blog .entrysingle ul li a{color:rgb(0,163,216);text-decoration: underline;}

tablenav:after{content:".";display:block;clear:both;height:0;visibility:hidden}
.tablenav{min-height:1px}
* html .tablenav{height:1px}
.tablenav{display:table;color:#dba156;margin:50px auto ;line-height:2em;text-align:center;border:solid 1px #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,0.047);font-size:12px;background: #fff;}
a.page-numbers,.tablenav .current{display:table-cell;color:#dba156;padding:4px 0;text-decoration:none;margin:0;border-right:solid 1px #ddd; width:3em;}
.tablenav .page-numbers{display:table-cell;color:#dba156;padding:4px 0;text-decoration:none;margin:0;border-right:solid 1px #ddd;width:3em;}
a.page-numbers:hover{color:white;background:#dba156}
.tablenav .current{background:#f5f5f5;color:#999}
.tablenav .next,.tablenav .prev{width:4em;}
.tablenav .dots{display: none;}


.single #content *{line-height: 150%}
.single #content p{margin-bottom: 1em;}
.single #content .wp-block-heading{font-size: 140%;padding:1em 0 0.5em;font-weight: bold;}
.single #content strong{font-weight: bold;}




@media screen and (max-width:1500px){

#head{padding:2vw}
body{font-size: 1.4vw}
#head .flex #name{font-size: 1.7vw;}
#head .flex #name span{font-size: 1.1vw;}
#head #nav .flex li{margin-left: 0.8em;letter-spacing: 0;}
#head #nav p a{width: 14vw;letter-spacing: 0;}

}

@media screen and (max-width:1250px){

.subnav{max-width: 96%;margin:50px auto 0;}
.block800,
.block{max-width: 96%;margin:0 auto;}
#second #mainview h1{font-size: 4.5vw}

/*35px*/
.ol_sec02 ul li h3,
.conv li a,
.tl{font-size: 2.7vw; }

/*30px*/
.ol_sec01 ul li,
.sub_tl,
.sec03 li dt,
.in_btn li a span,
#foot p.name,
.btn_form a{font-size: 2.5vw; }

/*25px*/
.pl_sec dl dt,
.blogsingle .entrybody h2 a,
.pl_sec .copy h3,
.btn a span,
.cl_sec .flex .copy .wide h3{font-size: 2vw; }

/*18px*/
.btn input,
.ol_sec02 ul li h3 span,
.sec03 li dt span,
#foot p.dis,
#foot p.copyright{font-size:1.5vw }

.conv li a svg, .conv li a img,
.btn_form svg{width: 3vw; }
.conv li a{padding:3vw 0}
.btn_form a{padding:4vw 0}
.cl_sec .flex .copy .wide{width: 44vw}
.btn_conv a svg{width: 1.5vw}

#blog .left{width: 68%;}
#blog #sidebar{width:26% }
.blogsingle .thum_info{width: 30%;}
.blogsingle .thum_info img{width: 100%;}
.blogsingle .entrybody{width: 65%}

.pa{padding:5vw 0}
.tl{margin-bottom: 3.5vw}
.tl_copy{margin: -2vw 0 3.5vw}
.subnav{margin-top:3.5vw}
.pt80px{padding-top: 4vw;margin-bottom: 1.5vw}

}