/*Theme Name: kuroshio*/

/*base*/
*,
*::before,
*::after {box-sizing: border-box;}

html, body, div, span,
h1, h2, h3, h4, h5, h6, p,
img, small, strong, b, i,
dl, dt, dd, ol, ul, li,
table, tbody, tfoot, thead, tr, th, td,
article, aside, figcaption, figure, footer, header, nav, section{margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}

body {scroll-behavior: smooth; text-rendering: optimizeSpeed;}

a{color: inherit; text-decoration:none;}

a:hover{color: inherit; text-decoration:none;}

ul,
ol{list-style: none; list-style-position:inside;}

img {max-width: 100%; display: block;}

html{font-size:62.5%; font-family: "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, Meiryo, sans-serif;}
body{font-size:1.4rem; line-height:1.6;}

.site_wrap {
	overflow: hidden;
}
.text-indent{
  text-indent:1em;
}
span.inline-block {display: inline-block;}

/*slider*/
.slider img {width: 100%; height: 70vh; object-fit: cover;}
@media screen and (min-width: 576px) {
.slider img {height: 100%;}
}

/*header*/
header {background-color: rgba(15,15,40,0.9); position: relative; width: 100%; z-index: 9999; padding:10px 0;}
header .container-fluid{max-width:1080px; margin:0 auto;}
header a {text-decoration: none;}
header .title{}
header .logo{display: block; height: 50px; background: url(images/logo_kuroshio.png) no-repeat left top; background-size: contain; text-indent: 100%; white-space: nowrap; overflow: hidden;}
header .menu li {float: left; padding: 0 0px; text-align: center; border-right: 1px solid #555; line-height: 1;}
header .menu li:last-child {border: none;}
header .menu li a {display: block; color: #fff; padding: 10px 12px; transition: all 0.3s ease-in-out;}
header .menu li a:hover{background-color:#FFF; color:#1a1169;}
header .menu li.current_page_item a {color:#CCC; background-color: rgba(15,15,40,0.9);}
header .phone{color: #FFF; font-size: 16px; font-weight: bold; margin-left:0.75em;}
header .spmenu{height: 100%; overflow-x:hidden; /*position:relative;*/}
header .spmenu .overlay{content: ""; display: block; width: 0; height: 0; background-color: rgba(0, 0, 0, 0.5); position: absolute; top: 0; left: 0; z-index: 2; opacity: 0; transition: opacity .5s;}
header .spmenu .overlay.open{width: 100%; height: 100%; opacity: 1;}
header .spmenu .trigger{display: inline-block; width: 36px; height: 28px; vertical-align: middle; cursor: pointer; position:absolute; /*position: fixed;*/ top:20px; right: 20px; z-index: 100;}
header .spmenu .trigger span{display: inline-block; box-sizing: border-box; position: absolute; left: 0; width: 100%; height: 4px; background-color: #FFF; transition: all 0.25s;}
header .spmenu .trigger.active{position: fixed;}
header .spmenu .trigger.active span{background-color: #FFF;}
header .spmenu .trigger span:nth-of-type(1){top: 0;}
header .spmenu .trigger span:nth-of-type(2){top: 12px;}
header .spmenu .trigger span:nth-of-type(3){bottom: 0;}
header .spmenu .trigger.active span:nth-of-type(1){transform: translateY(12px) rotate(-45deg);}
header .spmenu .trigger.active span:nth-of-type(2){opacity: 0;}
header .spmenu .trigger.active span:nth-of-type(3){transform: translateY(-12px) rotate(45deg);}
header .spmenu nav{width: 280px; height: 100vh; padding-top: 65px; background-color: rgb(78, 71, 139, 0.8); position: fixed; top: 0; right: 0; z-index: 10; transform: translate(280px); transition: all .5s;}
header .spmenu nav.open {transform: translateZ(0);}
header .spmenu nav .nav-item{font-size:1.4rem; text-align: center; padding:0.25em; border-bottom:1px solid #FFF;}
header .spmenu nav .nav-item:nth-of-type(1){border-top:1px solid #FFF;}
header .spmenu nav li a{color:#FFF;  padding:0.4em 0;}
header .spmenu nav li a:hover{color:#CCC;}
header .spmenu nav li .nav-item{padding:0;}
header .spmenu nav li .sub-menu{display:none;}
@media screen and (min-width: 992px) {
header .spmenu nav li .sub-menu{display:block;}
header {position: fixed;}
}

#menu-main-menu li {position: relative;}
#menu-main-menu ul {margin: 30px 0 0 0; opacity: 0; visibility: hidden; position: absolute; top: 40px; left: 0; z-index: 1; transition: all .2s ease-in-out; }
#menu-main-menu li:hover > ul {opacity: 1; visibility: visible; margin: 0; }
#menu-main-menu ul li {float: none; display:block; border-bottom:1px solid #FFF; }
#menu-main-menu ul li:last-child {border-bottom:none; }
#menu-main-menu ul a {display: block; white-space: nowrap; text-transform: none; color:#fff; background-color: rgba(15,15,40,0.9); }
#menu-main-menu ul a:hover {background-color: #FFF; color: #1a1169; }


/*footer*/
footer {color:#fff; background-color: #1a1169;}
footer .container-fluid{max-width:1080px; margin:0 auto; padding:50px 15px 15px;}
.site-sub-menu{text-align: center; margin-bottom:30px;}
.site-sub-menu ul{display:flex; flex-wrap:wrap; justify-content:space-between; border-top: 1px solid #4e478b; border-left: 1px solid #4e478b;}
.site-sub-menu li{font-size:12px; color: #fff; width:50%; text-decoration: none; transition-duration:0.4s; padding:5px; border-right: 1px solid #4e478b; border-bottom: 1px solid #4e478b;}
.site-sub-menu li:hover {background-color:#FFF; color:#1a1169;}
.site-sub-menu li a{position: relative;}
.site-base-info ul{max-width:700px; font-size:12px; line-height:2; text-align:center; margin:0 auto;}
.site-base-info li{margin-right:1em;}
.site-info{background-color: #0c0a23; color: #fff; font-size: 12px; text-align: center; padding: 10px 0;}
.site-footer-in {color: #fff; font-size: 12px;}
@media screen and (min-width: 992px) {
.site-sub-menu ul{border:none;}
.site-sub-menu li{font-size:14px; width:19%; margin-bottom:10px; border: 1px solid #827dad;}
}

/*side*/
.side_content{margin-bottom:30px;}
.side_content h3{font-size:16px; text-align:center; background-color:#ccc; margin-bottom:1em; padding:5px;}
.side_content li{margin-bottom:1em;}


/*common*/
.btn-reserve{text-align:center; color:#fff; background:#1a1169; border:2px solid #1a1169; border-radius:5px; margin:15px 0; transition-duration:0.4s;}
.btn-reserve a{display:block; font-size:16px; font-weight:bold; padding:10px;}
.btn-reserve span{font-size:80%;}
.btn-reserve a::after {display:block; font-family: 'FontAwesome'; content: "\f078";}
.btn-reserve:hover{color:#1a1169; background:#fff;}
@media screen and (min-width: 992px) {
.btn-reserve{}
.btn-reserve a{font-size:20px; padding:15px;}
}

/*page*/
.cover-photo img{width:100%; height:auto;}

.content-area {padding: 40px 0;}
.content-area .container-fluid{max-width:1080px; margin:0 auto;}
.content-area .page-title{text-align:center; margin-bottom:30px;}
.content-area h1{font-size:18px; font-weight:bold;}
.content-area h2{font-size:16px; font-weight:bold;}
.content-area p{font-size:14px; font-weight:normal; margin-bottom:1em;}
.content-area section{margin-bottom:40px;}
.content-area .section-title{margin: 0 0 20px; padding: 10px; border-top: 3px solid #666; background-color: #fafafa;}
@media screen and (min-width: 768px) {
.content-area h1{font-size:24px;}
.content-area h2{font-size:20px;}
.content-area p{font-size:16px; margin:0;}
}

/*blog*/
.blog-list{border-bottom:1px solid #ccc; padding-bottom:20px;}
.blog-list .thumbnail{margin-bottom:20px;}
.blog-list .thumbnail img{width:100%; height:auto;}
.blog-list span{font-size: 80%; background: #f00; color: #fff; margin-left: 10px; padding: 3px 10px;}
.blog-list h3{font-size:18px; margin-bottom:10px;}
.blog-list p{font-size:14px;}
.blog-list a{color:#007bff;}
.blog-list span{font-size: 80%; background: #f00; color: #fff; margin-left: 10px; padding: 3px 10px;}
.blog-list .date{font-size:14px; min-width:8em; margin-left:0.25em; margin-right:1em; margin-bottom:1em; color:#333;}
.blog-list .text{margin-left:0.25em; padding-bottom:10px;}
@media screen and (min-width: 768px) {
}

.blog-content .date{font-weight: bold; font-size: 18px; margin: 0 0 20px; padding: 10px; border-top: 2px solid #000; background-color: #fafafa;}
.blog-content img{display:inline-block; height:auto;}
.blog-content p{font-size:14px; line-height:2; margin:0 0 30px;}
.blog-content video{width:100%; max-width:800px; height:auto; margin-bottom:30px;}

@media screen and (min-width: 768px) {
.blog-content p{font-size:16px;}
}



/*information*/
.information-list{border-top:1px solid #ccc;}
.information-list li{font-size:16px; border-bottom: 1px solid #ccc;}
.information-list a{color:#007bff;}
.information-list span{font-size: 80%; background: #f00; color: #fff; margin-left: 10px; padding: 3px 10px;}
.information-list .date{font-size:14px; min-width:8em; margin-left:0.25em; margin-right:1em; padding:10px 0; color:#333;}
.information-list .text{margin-left:0.25em; padding-bottom:10px;}
@media screen and (min-width: 768px) {
.information-list .date{font-size:14px; min-width:8em; margin-left:0.25em; margin-right:1em; padding:25px 0 20px; color:#333;}
.information-list .text{padding:25px 0 20px;}
}

.information-content p {font-size: 14px; margin: 0 0 30px; line-height: 2.0;}
.information-content li {font-size: 14px; line-height: 2.0;}
.information-content img{display:inline-block; height:auto;}
@media screen and (min-width: 768px) {
.information-content p,.information-content li {font-size: 16px;}
}


/*カレンダーに枠と曜日の色を付ける*/
.wp-calendar {border-collapse: collapse; border-top-width: 1px; border-right-width: 1px; border-top-style: solid; border-right-style: solid; border-top-color: #999; border-right-color: #999; width: 100%; margin-left: 0px;}
.wp-calendar thead tr th {border-bottom-width: 1px; border-left-width: 1px; border-bottom-style: solid; border-left-style: solid; border-bottom-color: #999; border-left-color: #999;}
.wp-calendar thead tr th:nth-child(1){background-color: #FFFEDB; text-align:center;}
.wp-calendar thead tr th:nth-child(2){background-color: #FFFEDB; text-align:center;}
.wp-calendar thead tr th:nth-child(3){background-color: #FFFEDB; text-align:center;}
.wp-calendar thead tr th:nth-child(4){background-color: #FFFEDB; text-align:center;}
.wp-calendar thead tr th:nth-child(5){background-color: #FFFEDB; text-align:center;}
.wp-calendar thead tr th:nth-child(6){background-color: #C0DDF9; text-align:center;}
.wp-calendar thead tr th:nth-child(7){background-color:#F5D0D3; text-align:center;}
.wp-calendar td {text-align: center; padding: 0px; border-bottom-width: 1px; border-left-width: 1px; border-bottom-style: solid; border-left-style: solid; border-bottom-color: #999; border-left-color: #999;}
.wp-calendar caption {font-weight: bold; text-align: left;}
.wp-calendar tbody tr #today {font-weight: bold; background-color: #FFE5FF;}




/*コース紹介*/
.course_image img{width:100%; max-width:960px; margin:0 auto 30px;}
.course_layout h3{font-size: 18px; font-weight:bold; text-align:center; border-bottom: dotted 1px #ccc; margin:20px 0; padding:20px 0;}
.course_detail h4{font-size: 16px; font-weight:bold; text-align:center; border-bottom: dotted 1px #ccc; margin:20px 0; padding:20px 0;}
.course_detail a{display:block; font-weight:bold; color:#fff; background-color:#4e478b;text-align:center; border:1px solid #ccc; border-radius:5px; margin-bottom:20px; padding:10px 0; transition-duration:0.4s;}
.course_detail .danryu a{background-color:#F22F32;}
.course_detail .taiheiyo  a{background-color:#062B0A;}
.course_detail .kuroshio-out a{background-color:#F29D1B;}
.course_detail .kuroshio-in a{background-color:#5D45F4;}
.course_detail a:hover{background-color:#fff; color:#4e478b;}
.course_detail .danryu a:hover{color:#F22F32;}
.course_detail .taiheiyo a:hover{color:#062B0A;}
.course_detail .kuroshio-out a:hover{color:#F29D1B;}
.course_detail .kuroshio-in a:hover{color:#5D45F4;}
.course-aerial h3{font-size: 18px; font-weight:bold; text-align:center; border-bottom: dotted 1px #ccc; margin-bottom:20px; padding-bottom: 20px;}
.course-yard th,
.course-yard td{text-align:center;}
@media screen and (min-width: 992px) {
  .course-aerial .col-md-6 {margin-top: -70px;padding-top: 70px;}
}


.player {position: absolute; top: 0; left: 0;}
.thumb {position: absolute; top: 0; left: 0;}
.movie {position: relative; padding-top: 54.5%; margin-bottom: 20px;}
.movie iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.play_button:after {content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; width: 100%; height: 100%; background: url("./course/play.png") center center no-repeat; background-size: 70px 70px; transition: 0.5s; pointer-events: none;}
.play_button:hover:after {-webkit-transform: scale(1.1); transform: scale(1.1); background: url("./course/play.png") center center no-repeat; background-size: 70px 70px; pointer-events: none;}

.course_modal .title{color: #4e478b; margin-top:20px;}
.course_modal h1{font-size:22px; font-weight:bold;}
.course_modal h2{font-size:16px; border-left: solid 8px rgba(15,15,40,1.0); margin-bottom:10px; padding-left: 15px;}
.course_modal p{font-size:12px;}
.course_modal dt{font-size:16px; margin-right:0.25em;}
.course_modal dd{font-size:16px; margin-right:0.5em;}
.course_modal video{max-width:100%; margin:0 auto;}
.course_modal img{max-width:100%; margin:0 auto;}
.course_modal .text{border-bottom:1px solid #ccc; margin:15px 0; padding-bottom:15px;}
.course_modal .video{width:99%; margin:15px 0;}
.course_modal .pdf{text-align:center; padding:10px 0;}
.course_modal .pdf a{display:block; font-weight:bold; color:#fff; background-color:#4e478b;text-align:center; border:1px solid #ccc; border-radius:5px; margin-bottom:20px; padding:10px 0; transition-duration:0.4s;}
.course_modal .pdf a:hover{background-color:#fff; color:#4e478b;}


@media screen and (min-width: 768px) {
  .course_modal{width:calc(100% - 50px); height:800px; margin:0 auto;}
  .course_modal .title{margin:20px 20px 0;}
  .course_modal img{max-height:768px;}
  .course_modal p{font-size:14px;}
}


/*施設紹介*/
.facility .box{
    padding-top: 100px;
    margin-top:-100px;
}

/*レストラン*/
.restaurant_menu{display:grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); justify-content:space-between; margin:20px 0; gap: 10px;}
.restaurant_menu li{text-align:center;border:1px solid #505050;}
.restaurant_menu a{display:flex;  color:#505050; padding:10px; text-decoration: none; height: 100%;}
.restaurant_menu a:hover{color:#FFF; background-color:rgba(15,15,40,0.9);}
.restaurant_menu a span {flex:1; align-self: center;}

.restaurant_contents{margin-bottom:40px;}
.restaurant_contents p{color:#333; margin-bottom:0.5em;}

.restaurant_contents img{width:100%; margin-bottom:1em;}
.restaurant_contents h2{font-weight: bold; font-size: 18px; margin: 0 0 20px; padding: 10px; border-top: 2px solid #000; background-color: #fafafa;}
.restaurant_contents h3{font-weight: bold; font-size: 16px; margin-bottom:10px; color:#333;}
.restaurant_contents h4{font-weight: bold; font-size: 16px; margin-bottom:5px; color:#333;}

.restaurant_item,
.restaurant_sp_item{display:flex; -webkit-flex-wrap: wrap; /* Safari */   flex-wrap:wrap;  justify-content:space-between; }

.restaurant_sp_item::after{display:block; content:''; width:31%; height:0;}


.restaurant_item dl{margin: 1%; padding: 1%;width:23%;}
.restaurant_sp_item dl{margin: 1%; padding: 1%;width:30%;}

.restaurant_item dt,
.restaurant_sp_item dt {margin-bottom: 15px; box-sizing: border-box;}

.restaurant_item dd,
.restaurant_sp_item dd {margin-bottom: 15px; box-sizing: border-box;}

.restaurant_item img{border:solid 1px #CCC; padding:5px; width:100%; height:100%;}
.restaurant_sp_item img{border:solid 1px #CCC; padding:5px; width:100%; object-fit:cover;}

.restaurant_item::before{content:""; display:block; width:25%; order:1;}
.restaurant_item::after{content:""; display: block; width:25%;}

.restaurant_sp_item .food_menu ul{display:flex; -webkit-flex-wrap: wrap; /* Safari */   flex-wrap:wrap;  justify-content:space-between; }
.restaurant_sp_item .food_menu li{margin: 1%; padding: 1%;width:48%;}


.restaurant_drink{display:flex; -webkit-flex-wrap: wrap; /* Safari */   flex-wrap:wrap;  justify-content:space-between; }
.restaurant_drink_item{margin: 1%; padding: 1%;width:48%;}

.restaurant_drink_menu dl{display:flex; -webkit-flex-wrap: wrap; /* Safari */   flex-wrap:wrap;  justify-content:space-between; margin-bottom:30px;}
.restaurant_drink_menu dt{margin: 1%; padding: 1%;width:70%;}
.restaurant_drink_menu dd{margin: 1%; padding: 1%;width:26%;}

#restaurant_oeuvre-menu .food_image{display:none;}
#restaurant_oeuvre-menu .food_menu{display:none;}

.food_image {position: relative;}
.food_image p {position: absolute; top: 0;  left: 0; margin: 0;  color: white; background: red; font-size: 14px; line-height: 1; padding: 5px 10px;/*文字周りの余白*/}
@media screen and (max-width:640px){
.restaurant_menu {display: block;}
.restaurant_menu li{margin: 1%;}
.restaurant_menu .pc-br{display: none;}
.restaurant_item dl{margin: 1%; padding: 1%;width:48%;}
.restaurant_sp_item dl{margin: 1%; padding: 1%;width:98%;}
.restaurant_drink_item{margin: 1%; padding: 1%;width:98%;}
.restaurant_drink_menu dt span{left:50%;}
}



.item_name p{font-weight: bold;margin:0px 5px 5px 5px;}
.item_price p{color: #888; margin:0px 5px 5px 5px;}
.item_contents p{color: #333; margin:0px 10px 5px 10px;}

/*競技情報*/
.kuroshiojunior-lately a{color:#007bff; font-weight:bold;}

.kyougi-list h3{font-size:16px; font-weight:bold; border-bottom:1px solid #ccc; margin-bottom:0.25em; padding-bottom:0.25em}

.kyougi-list h3::before{font-family: "FontAwesome"; content:'\f0da'; padding-right: 0.5em; font-size:80%; color:#1a1169;}
.kyougi-list a{color:#007bff}
.kyougi-list a:hover{text-decoration: underline;}
.kyougi-list p{font-size:14px; margin:0;}
.kyougi-list .headline{font-size:16px; margin-bottom:2em;}
.kyougi-list .overview{font-size:14px; margin-bottom:1em;}


/*黒潮カップ*/
.kuroshiocup-lately{margin-bottom:50px;}
.kuroshiocup-list h3{font-size:16px; font-weight:bold; border-bottom:1px solid #ccc; margin-bottom:0.25em; padding-bottom:0.25em}
.kuroshiocup-list h3::before{font-family: "FontAwesome"; content:'\f0da'; padding-right: 0.5em; font-size:80%; color:#1a1169;}
.kuroshiocup-list a{color:#007bff}
.kuroshiocup-list a:hover{text-decoration: underline;}
.kuroshiocup-list p{font-size:14px; margin:0;}
.kuroshiocup_img img{margin:0 auto 20px;}
@media screen and (min-width: 768px) {
.widthChange {width: 7em;}
}
/*黒潮ジュニア選手権*/
.kuroshiojunior-lately{margin-bottom:50px;}
.kuroshiojunior-list h3{font-size:16px; font-weight:bold; border-bottom:1px solid #ccc; margin-bottom:0.25em; padding-bottom:0.25em}
.kuroshiojunior-list h3::before{font-family: "FontAwesome"; content:'\f0da'; padding-right: 0.5em; font-size:80%; color:#1a1169;}
.kuroshiojunior-list a{color:#007bff}
.kuroshiojunior-list a:hover{text-decoration: underline;}
.kuroshiojunior-list p{font-size:14px; margin:0;}
.kuroshiojunior img{margin:0 auto 20px;}
#junior-2022 .red {color: #ff0000;}
#junior-2022 .mb {margin-bottom: 1em;}
#junior-2022 .underline {border-bottom: 1px solid #ff0000;}
#junior-2022 .underline-double,.section.kurosio-juniour .underline-double {border-bottom: 4px double;}
#junior-2022 .table-2022 td:nth-child(1) {padding: 10px 2em 10px 10px;}


/*クラブ会員*/
.member-benefits h3{font-size:18px; font-weigh:bold; margin:1em 0 0.5em;}
.member-jgto a{color:#007bff; font-weight:bold;}
.member-partnership a{color:#007bff; font-weight:bold;}
.member-journal a {color: #007bff;}
.member-journal ol {counter-reset: count 0;}
.member-journal li {font-size: 16px;}
.member-journal ol li::before {display: inline-block; content: counter(count); counter-increment: count 1; text-align: center; line-height: 1.3; width: 1.4em; margin-right: 0.3em; border: 1px solid; border-radius: 50%;}
@media screen and (max-width: 767px) {
  .member-journal li {font-size: 14px;}
}
.member-pointcard table caption {color: inherit; caption-side: top; padding: 1em 0 0;}

/*提携コース*/
.alliance-list h3{font-size:16px; font-weight:bold; border-bottom:1px solid #ccc; margin-bottom:0.25em; padding-bottom:0.25em}

.alliance-list h3::before{font-family: "FontAwesome"; content:'\f0da'; padding-right: 0.5em; font-size:80%; color:#1a1169;}
.alliance-list a{color:#007bff}
.alliance-list a:hover{text-decoration: underline;}
.alliance-list p{font-size:14px; margin:0;}
.alliance-list .headline{font-size:16px; margin-bottom:2em;}
.alliance-list .overview{font-size:14px; margin-bottom:1em;}
.alliance-list .address::before{font-family: "FontAwesome"; content:'\f041'; padding-right: 0.25em;}
.alliance-list .tel::before{font-family: "FontAwesome"; content:'\f095'; padding-right: 0.25em;}
.alliance-list .link .pdf{  display: inline-flex; align-items: center; justify-content: center; border: 1px solid #AAAAAA; border-radius: 999px; background: #007bff; color: #FFFFFF; font-size: 14px; font-weight: bold; line-height: 1; margin-top: 0.5em; padding: 0.5em 1em; text-decoration: none; transition: opacity .15s ease, transform .15s ease, background-color .15s ease;}
.alliance-list .link .pdf:hover{ opacity: .9;}
.alliance-list .link .pdf:focus-visible{ outline: 2px solid currentColor; outline-offset: 2px;}
.alliance-list .link .pdf:active{ transform: translateY(1px);}

/*会員募集*/




/*プライバシーポリシー*/
.privacy-policy p{margin-bottom:2em;}
.privacy-policy dt{font-size:16px; margin-bottom:0.5em;}
.privacy-policy dd{font-size:14px; margin:0 0 1.5em 0;}
.privacy-policy li{margin:0.75em 0 0.75em 1em; text-indent:-1em;}
.privacy-policy li:before{content:"・";}

@media screen and (min-width: 768px) {
.privacy-policy dd{font-size:16px; margin:0 0 2em 1.5em;}}

/*観光案内*/
.model-course_wrap{color:#666; width:100%; border-left:none; background-image: none; padding-top:0;}
.model-course_wrap:after{content:none;}
.model-course_wrap a{display:block; width:150px; text-align:center; margin:10px auto; padding:5px 10px; color:#FFF; background:#2E2290; border:1px solid #ccc; transition-duration:0.4s;}
.model-course_wrap a::before{font-family: "FontAwesome"; content: "\f002"; padding-right: 5px; font-style: normal;}
.model-course_wrap a:hover{color:#1a1169; background:#fff;}


.model-course h3{font-size:18px; font-weight:bold;}
.model-course p{margin:0.25em 0 1em;}
.model-course .title{font-size:16px; font-weight:bold;}
.mc_box{padding:20px; border:2px dotted #2E2290; margin:15px 0 15px;}
.mc_move{margin-left:-5px; padding-left:60px; min-height:50px;}
.mc_move p{line-height:150%; margin:5px 0;}
.mc_travel-time{font-weight:bold; color:#2E2290;}
.mc_travel-time::before{font-family: "FontAwesome"; content:'\f017'; padding-right: 5px;}
.mc_car{background-image:url(./images/model-course/mc_car.png); background-repeat:no-repeat; background-position:center left;}
.mc_walk{background-image:url(./images/model-course/mc_walk.png); background-repeat:no-repeat; background-position:center left;}
.mc_bike{background-image:url(./images/model-course/mc_bike.png); background-repeat:no-repeat; background-position:center left;}
.mc_tram{background-image:url(./images/model-course/mc_tram.png); background-repeat:no-repeat; background-position:center left;}

@media screen and (min-width: 768px) {
.model-course_wrap{width:90%; margin:0 auto 50px; padding-top:50px; border-left:5px solid #2E2290; background-image: linear-gradient(135deg, #2E2290 15px, transparent 0);}
.model-course_wrap:after{content:url(./images/model-course/mc_icon00.png); position:relative; top:20px; right:27px;}
.mc_box{margin:0 0 30px 30px;}
.mc_move{margin-left:-27px;}
}

/*宿泊施設*/
.hotel-plan .headline{font-size:16px; margin-bottom:2em;}
.hotel-plan h3{font-size:16px; font-weight:bold; border-bottom:1px solid #ccc; margin-bottom:0.25em; padding-bottom:0.25em}
.hotel-plan a{color:#007bff}
.hotel-plan p{font-size:14px; margin:0;}
.hotel-plan .overview{font-size:14px; margin-bottom:1em;}
.hotel-plan .address::before{font-family: "FontAwesome"; content:'\f041'; padding-right: 0.25em;}
.hotel-plan .tel::before{font-family: "FontAwesome"; content:'\f095'; padding-right: 0.25em;}

.hotel-list h3{font-size:16px; font-weight:bold; border-bottom:1px solid #ccc; margin-bottom:0.25em; padding-bottom:0.25em}

.hotel-list h3::before{font-family: "FontAwesome"; content:'\f0da'; padding-right: 0.5em; font-size:80%; color:#1a1169;}
.hotel-list a{color:#007bff}
.hotel-list a:hover{text-decoration: underline;}
.hotel-list p{font-size:14px; margin:0;}
.hotel-list .address::before{font-family: "FontAwesome"; content:'\f041'; padding-right: 0.25em;}
.hotel-list .tel::before{font-family: "FontAwesome"; content:'\f095'; padding-right: 0.25em;}

@media screen and (min-width: 768px) {
.hotel-list h3{font-size:18px;}}

/*採用情報*/
.recruit_table tr:first-child{color:#fff; background:#1a1169;}
.recruit_table th{width:7em; text-align:center;}

/*予約*/
.phone-booking span{font-size:2.4rem; font-weight:bold; padding-right:5px;}
.phone-booking span::before{font-family: "FontAwesome"; content:'\f095'; padding-right: 0.25em;}



/*トップページ*/
.menu-title{font-size:16px; text-align:center; border-bottom:solid 1px #CCC; margin-bottom:20px; padding-bottom:10px;}

.front-menu li a{color:#315683; font-family: "HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO","ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro"; text-decoration:none; display:block; position:fixed; width:160px; height:60px;; text-align:center; background-color: #FFF;
/* background: url(images/golfball.png) no-repeat; background-size: contain;
*/ font-weight:bold; display: flex; flex-direction: column; justify-content: center; align-items: center;}
.front-menu li:nth-child(1) a{top:125px; left:25px;}
.front-menu li:nth-child(2) a{top:195px; left:25px;}
.front-menu li:nth-child(3) a{top:265px; left:25px;}
.front-menu li:nth-child(4) a{top:335px; left:25px; background:none; padding:10px 0;}
.front-menu li:nth-child(5) a{color: #465722; top:405px; left:25px; }
.front-menu span{background: #f00; color: #fff; font-size: 80%; padding: 3px 10px;}

.frontpage-blog li{margin-bottom:1em;}


.frontpage-covid-19 p{color:#F00; font-weight:bold; text-align:center; text-decoration:underline;}
#covid-19-portal h1{font-size:16px;}
.container-covid {text-align: center;}
.container-covid a {color: #F00; font-weight: bold; text-decoration: underline; padding: .5em; background:#FFF;}
.container-covid a:hover {text-decoration: none;}
@media screen and (min-width: 768px) {
#covid-19-portal h1{font-size:24px;}
}

.frontpage-covid-19 p{color:#F00; font-weight:bold; text-align:center; text-decoration:underline;}
#covid-19-portal h1{font-size:16px;}
@media screen and (min-width: 768px) {
#covid-19-portal h1{font-size:24px;}
}

.frontpage-movie-sp p{color:#F00; font-weight:bold; text-align:center; text-decoration:underline;}
#frontpage-movie video {
  width: 80vw;
  height: auto;
  display: block;
}
.frontpage-weather img {display: inline:}

/*服装規定（ドレスコード）*/
.dress-code-list li::before {content:"・";}
.dress-code-p {width:fit-content; margin:0 auto;}

/*イベントカレンダー*/
.fc-day-grid-event{margin: 5px !important; padding: 5px !important;}
.fc-list-header-left{float:right !important; padding-right:5px;}
.fc-list-header-right{float:left !important; padding-left:5px;}
.fc-list-header-right::after{content:'日';}
.fc-sun{color:red;}

/*カシオコース用文章*/
#casio_sentence{padding:15px; text-align:center; background-color:#BFFDFD; border:solid 1px #82FFFF; font-size:16px; line-height:200%; margin-bottom:15px;}



.wpcf7 input[type="submit"] ,.pushbutton-wide{border: 1px solid #000000; background: #1a1169; display: inline-block; text-align: center; margin: 0 10px; padding: 10px 20px; width:90%;}
.wpcf7 input[type="submit"]:hover{border: 1px solid #1a1169; cursor: pointer;}
.mw_wp_form input[type="submit"] ,.pushbutton-wide{color: #FFF; font-size: 18px; border: 1px solid #000000; background: #1a1169; text-align: center; margin: 20px 10px; padding: 10px 20px; width:90%;}
.mw_wp_form input[type="submit"]:hover{border: 1px solid #1a1169; cursor: pointer;}
.mw_wp_form_input .inqspan2 p {display: none;}
.mw_wp_form_confirm .inqspan2 p {display: block;}
.mw_wp_form_confirm .submit-box {display: flex;}
.wp_form_complete p {padding-top: 1em;}
.menu-item-1382:hover{	cursor: pointer;}
.wpcf7 .your-message{width:100%;}

/*新しいゴルフ規則*/
.rules2019 img{width:100%;}
.rules2019_pdf{margin-bottom:30px;}
.rules2019 h2{  font-weight: bold;   font-size: 18px;   margin: 0 0 20px;   padding: 10px;   border-top: 2px solid #000;   background-color: #fafafa;}

.meetback{background: url("./images/meetback.png") right center no-repeat; background-size:contain;}





/*物販ページ*/
.store_contents h2{  font-weight: bold;   font-size: 18px;   margin: 0 0 20px;   padding: 10px;   border-top: 2px solid #000;   background-color: #fafafa;}
.store_item dt {display: inline-block; margin-bottom: 15px;}
.store_item{display:flex; -webkit-flex-wrap: wrap; /* Safari */   flex-wrap:wrap;  justify-content:space-between; }
.store_item dl {margin: 1%; padding: 1%; flex-wrap: wrap; width:30%;}
.store_item img {border:solid 1px #CCC; padding:5px; height:100%; width:100%; }
.store_item::after{content:""; display: block; width:30%;}

.item_name p{font-weight: bold;margin:0px 5px 5px 5px;}
.item_price p{color: #888; margin:0px 5px 5px 5px;}
.item_contents p{color: #333; margin:0px 10px 5px 10px;}


@media screen and (max-width: 540px) {
.store_item dl {width:100%; border-bottom:dotted 3px #CCC;}}







.entry-content .inquiry th,.entry-content .inquiry td {display:block;width:100%;border-top:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;	}
.entry-content .inquiry tr:first-child th{border-top:1px solid #d7d7d7;}
/* 必須・任意のサイズ調整 */	
.inquiry .haveto,.inquiry .any {	
font-size:10px;}}


/*見出し欄*/
.inquiry th{   text-align:left;    font-size:14px;    color:#444;    padding-right:5px;    width:30%;    background:#f7f7f7;    border:solid 1px #d7d7d7;}
/*通常欄*/
.inquiry td{   font-size:13px;    border:solid 1px #d7d7d7;	}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{   border:solid 1px #d7d7d7;	}
/*必須の調整*/
.haveto{   font-size:7px;    padding:5px;    background:#E70014;    color:#fff;    border-radius:2px;    margin-right:5px;    position:relative;    bottom:1px;}
/*任意の調整*/
.any{   font-size:7px;    padding:5px;    background:#0c0a23;    color:#fff;    border-radius:2px;    margin-right:5px;    position:relative;    bottom:1px;}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item{   display:block;}
/*送信ボタンのデザイン変更*/
#formbtn{   padding:15px;    max-width:350px;    background:#ffaa56;    color:#fff;    font-size:18px;    font-weight:bold;	     border-radius:2px;    margin:25px auto 0;}
/*送信ボタンマウスホバー時*/
#formbtn:hover{   background:#fff;    color:#ffaa56;    border:2px solid #ffaa56;}


/*お問い合わせ*/
.inquiry2{padding:50px 0px 60px 0px; margin:0px auto; width:1180px;}
.inquiry2 h2{font-size:30px; margin-bottom:40px; color:#333; text-align:center;}
.tel_contact{margin:70px 0px; padding:40px 0px; background-color:#E4EFF3;}
.inquiry2 p{text-align:center;}
p.tc1{margin-bottom:10px; font-size:20px; color:#333; font-weight:bold;}
p.tc2{font-size:70px; color:#333; font-weight:bold;}
p.tc2::before{content:url(/img/inq_freedial.png); }
p.inq2{margin-bottom:40px;}
span.hissu{padding:5px; background-color:#E70014; color:#FFF;}
.inq_form{width:1080px; margin:30px auto;}
.inq_dl1{border:solid 1px #CCC; margin-bottom:60px;}
.inq_dl1 dl{display:flex; flex-wrap: wrap;}
.inq_dl1 dt{width: 30%; padding: 10px; box-sizing: border-box;border-bottom: 2px dotted #ccc; display: flex; align-items:center; color:#0070BC; font-weight:bold; background-color:#E4F1F9;}
.inq_dl1 dd{padding: 10px; margin: 0; width: 70%; background: #fff; box-sizing: border-box; border-bottom: 2px dotted #ccc; display: flex; align-items:center;}

span.inq_hissu::after{white-space: pre; content:"必須"; font-size:12px; color:#FFF; background-color:#E70014; padding:2px; margin-left:10px;}
.wpcf7-form-control {max-width:100%}
input[type="text"],input[type="tel"],input[type="email"]{padding:5px;}
.text-329, .text-330, .text-331, .text-332, .text-587, .text-588, .text-589{width:40%; padding:5px;}
.textarea-539{width:100%;}
textarea{width:100%;}
.width100{width:95%;}
.inq_dl2{border:solid 1px #CCC; }
.inq_dl2 dl{display:flex; flex-wrap: wrap;}
.inq_dl2 dt{width: 30%; padding: 10px; box-sizing: border-box;border-bottom: 2px dotted #ccc; display: flex; align-items:center; color:#0070BC; font-weight:bold; background-color:#E4F1F9;}
.inq_dl2 dd{padding: 10px; margin: 0; width: 70%; background: #fff; box-sizing: border-box; border-bottom: 2px dotted #ccc; display: flex; align-items:center;}
.inqspan{text-align:center; font-size:20px; margin-bottom:10px;}
.text-590, .text-591{width:30%; padding:5px;}
dt.nobottom{border:none;}
dd.nobottom{border:none;}
.inqspan2{text-align:center; margin-top:35px;}
input.wpcf7c-btn-back,
input.wpcf7-submit,
input.wpcf7-confirm {font-size:18px; background-color:#333; padding:10px 15px; color:#FFF; border:none;}
input.wpcf7c-btn-back {background: lightgray;}
.inqspan3{text-align:center; margin-top:30px;}


.inq_form{width:1080px; margin:30px auto;}
/*-----------------------------------------*/
/*お問い合わせ*/
/*-----------------------------------------*/
.wpcf7-select{height:32px;}
.wpcf7-name{width:90%; margin-left:5px; margin-right:10px}




@media screen and (max-width: 1180px) {
.inquiry h2{font-size:1.5rem; margin-bottom:20px;} .inq_form{width:100%; padding:50px 0px 60px;} p.tc2 {font-size:4.0rem;}
}
@media screen and (max-width: 600px) {
.inquiry h2{font-size:1.28rem; text-align:center; margin-bottom:20px;} .inquiry h3{font-size:1.14rem;} .inquiry p{font-size:1.0rem; line-height:180%; text-align:left;}  .inquiry2 p{padding:0 10px;}  .tel_contact{padding:20px 10px;} p.tc1{font-size:1.28rem; text-align:center;} p.tc2 {font-size:1.7rem;} p.tc2::before{display: inline-block; vertical-align: middle; -webkit-transform: scale(0.5); transform: scale(0.5);} p.tc3 {text-align:center;}
 .inq2{padding:0 10px;} .inq_form{width:100%; padding:0 10px;}
 .inqspan3{text-align:left;} .inqspan3 br{display:none;} .inq_dl1 dt{width: 100%;} .inq_dl1 dd{width: 100%; padding:5px;} .text-331{width: 35%;} .text-332{width: 35%;} .inq_dl2 dt{width: 100%;} .inq_dl2 dd{width: 100%;} .wpcf7-name{width:80%;}
}

span.blb{font-weight:bold; color:#0070C0;}

.information-content .date{
	font-weight: bold;
	font-size: 18px;
	margin: 0 0 20px;
	padding: 10px;
	border-top: 2px solid #000;
	background-color: #fafafa;
}

/*お知らせページその３*/
.btn-border {
  display: inline-block;
  width: 100%;
  text-align: center;
  background-color: #1a1169;
  border: 2px solid #1a1169;
  font-size: 16px;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 4px;
  transition: .4s;
  margin-bottom:30px;
}
.btn-border:hover {
  background-color: #fff;
  border-color: #1a1169;
  color: #1a1169;
}


.table-basic {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #ddd;
	margin: 0 0 50px;
}
.table-basic th {
	background-color: #fafafa;
	font-weight: bold;
	padding: 10px;
	border: 1px solid #ddd;
	vertical-align: middle;
	text-align:center;
}
.table-basic td {
	padding: 10px;
	border: 1px solid #ddd;
}
.table-basic .annotation {
	font-size: 10px;
	font-weight: normal;
}
.table-basic td.taR {
	text-align: right;
}
.table-basic tfoot td {
	background-color: #fafafa;
}

.table-basic a{color: #007bff; text-decoration: none; background-color: transparent;}
@media screen and (max-width: 540px) {
.table-basic {
    font-size: 12px;
}
.table-basic td {
    padding: 5px;
}
}


.topbanner{
    border-top:5px solid #1a1169;
}

.topbanner .box{
    border-top:10px solid #FFF;
}

.topbanner .box a{
    width: 49%;
}

.sns ul{
  display:flex;
  justify-content:center;
}
.btn-sns{
  width: 36px;
  height: 36px;
  font-size: 1.6rem;
  font-weight:700;
  line-height: 36px;
  color: #fff;
  letter-spacing: 0;
  margin:0.15em;
  border:0;
  padding: 0 !important;
}
.btn-sns-twitter{
  background: #1da1f2;
}
.btn-sns-instagram{
  background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}
.sp_sns ul{
  display:flex;
  justify-content:center;
  margin:15px;
}
.sp_sns ul li{
  margin:0 5px;
}
.sp_sns .btn-sns{
  width: 48px;
  height: 48px;
  font-size: 2.4rem;
  line-height: 48px;
}

.mw_wp_form .inq_dl1 dd{display: block;}
.mw_wp_form input[type="text"]{width:100%;}
.submit_button button{color:#FFF; border: 1px solid #000000; background: #999; display: inline-block; text-align: center; margin: 0 10px 30px;  padding: 10px 20px; width:90%;}
.submit_button input[type="submit"]{color:#FFF; border: 1px solid #000000; background: #1a1169; display: inline-block; text-align: center; margin: 0 10px; padding: 10px 20px; width:90%;}
.submit_button input[type="submit"]:hover{border: 1px solid #1a1169; cursor: pointer;}

/*-- 3/28 footer追加 --*/
#colophon .flex {
	display: flex;
	gap: 4%;
}
#colophon .flex a{
	width: calc(92% / 3);
}
#colophon .flex img {
    margin: 0 auto 20px;
}
@media screen and (max-width: 768px) {
#colophon .flex {
	display: block;
	text-align: center;
}
#colophon .flex img {
    max-width: 300px;
}
}

