@charset "UTF-8";
/*==========================================
  Common
==========================================*/
html {
    font-size: calc(100vw / 140);
}

/* base
==================================*/
h1,
h2,
h3,
h4,
h5,
h6,
p,
pre,
blockquote,
ul,
li,
ol,
dl,
dd,
tr {
  font-size: 1.6rem;
}


/*　Retina対応時のCSS↓　*/
/* header
==================================*/
header {
  height: 11.8rem;
}

.btn_fixed{
  right: 3.2rem;
  bottom: 3.2rem;
	border-radius: 99.9rem;
	width: 16rem;
	height: 16rem;
}

.btn_fixed a .btn_fixed_title{
	margin-left: -5.3rem;
	margin-top: -3.8rem;
	width: 10.6rem;
}

.header_inner{
  padding: 0 3.2rem;
}

header .logo{
	top: -0.5rem;
}

header .logo img {
  height: 4.5rem;
}

.header_right{
  grid-gap: 1.8rem;
  right: 3.2rem;
  top: 3.2rem;
}

.language_btn{
  border-radius: 3.5rem;
  height: 3.5rem;
}

.language_btn a{
  width: 4.5rem;
  border-radius: 3.5rem;
  font-size: 1.3rem;
}

#menu-toggle{
  width: 15rem;
  height: 3.5rem;
  border-radius: 3.5rem;
  padding: 0 2.2rem;
  gap: 2rem;
}

#menu-toggle .line {
  width: 2rem;
  height: .6rem;
}

#menu-toggle .line:before,
#menu-toggle .line:after {
  /* height: .1rem; */
	height: 0.1rem;
}

#menu-toggle:after {
  font-size: 1.5rem;
}

.open #menu-toggle .line:before {
  transform: translateY(.3rem) rotate(35deg);
}

.open #menu-toggle .line.show:after {
  transform: translateY(-.3rem) rotate(-35deg);
}

header nav{
  /* padding: 17.5rem 0; */
	padding: 17.5rem 0 5rem 0;
}

header nav .logo {
  left: 4.2rem;
  top: 3.65rem;
}

.nav_btn{
  width: 25.6rem;
  grid-gap: 1.5rem;
}

.nav_list{
  width: calc(100% - 25.6rem - 9rem);
  grid-gap: 2rem;
}

.nav_list .footer_nav_list a{
  font-size: 1.7rem;
}

.nav_list .footer_nav_list .subLi a{
  font-size: 1.6rem;
}

.nav_list .subLi, 
.nav_list .footer_nav_list li+li {
    margin-top: 1.6rem;
}

.nav_list .subLi ul li {
    margin-top: 1rem;
}


/*=============================
	.footer_nav_list.type-a
=============================*/
.nav_list .footer_nav_list.type-a li+li{
	margin-top: 3.6rem;
}

/*=============================
	.footer_nav_list.type-b
=============================*/
.nav_list .footer_nav_list.type-b li+li{
	margin-top: 3.6rem;
}

header nav .loopTxt{
  bottom: 3rem;
}

.btn_link01{
  width: 26rem;
  height: 6rem;
  border-radius: 3rem;
  padding: 0 3.2rem;
  font-size: 1.7rem;
  background-size: 1.1rem auto;
}

.btn_link01::after{
	top: 2.5rem;
	right: 2.8rem;
	width: 1.1rem;
	height: 1.2rem;
	background-size: 1.1rem 1.2rem;
}

.btn_link01:hover::after {
  transform: translateX(.5rem);
}

/* footer
==================================*/
footer {
  padding: 7.5rem 0 5rem;
}

/* #pageTop
==================================*/

#pageTop {
	right: 2.4rem;
	bottom: 0;
	width: 7.6rem;
	height: 8.3rem;
}

#pageTop a {
  width: 7.6rem;
}

#pageTop a .flag{
	right:0;
	top:0;
	width: 4.4rem;
}

#pageTop a .hole{
	left: 1.8rem;
  bottom: 2rem;
	width: 3.1rem;
	height: 1rem;
}

#pageTop a .ball{
  right: 0;
  bottom: 2.6rem;
  width: 1.4rem;
  height: 1.4rem;
	transform: translateX(8rem);
}

#pageTop a .top{
	width: 7.6rem;
	height: 8.3rem;
}

@keyframes ball-roll {
  0% {
    transform: translate(8rem, 0);
    opacity: 1;
  }
  85% {
		transform: translate(-2rem, 0);
    opacity: 1;
  }
	100% {
		transform: translate(-2.7rem, 2px);
    opacity: 0;
  }
}

/* .footer_nav
==================================*/
.footer_nav{
  grid-gap: 2rem;
}

.subLi,
.footer_nav_list li+li{
  margin-top: 1.3rem;
}

.subLi ul li{
  margin-top: .5rem;
}

.footer_nav_list a{
  font-size: 1.4rem;
}

.footer_dl01{
  grid-gap: 2.8rem;
  margin: 5.5rem 0;
}

.footer_dl01 dt{
  width: 8.5rem;
}

.footer_dl01 dd{
  font-size: 1.5rem;
}

.footer_dl02{
  padding-right: 8rem;
  font-size: 1.5rem;
}

.footer_dl02 li{
  padding-right: 1.5rem;
  margin-right: 1.5rem;
  border-right: .1rem solid #5a5a5a;
  font-size: 1.4rem;
}

.copy{
  font-size: 1.2rem;
}

.footer_dl01:before,
.loopTxt {
  height: 11.8rem;
}

.footer_dl01:before{
  top: -3rem;
}


/* Animation
==================================*/
.c-anim-up {
  transform: translate(0, 2rem);
}

/*==================================
  Component
==================================*/
.container02,
.container {
  max-width: 134rem;
  padding-left: 5rem;
  padding-right: 5rem;
}
.container02{
  max-width: 120rem;
}

/*==================================
	リスト系
==================================*/
.news_ul {
  margin: 0 0 1.9rem;
}

.news_ul .news_li+.news_li{
  margin-top: 2rem;
}

.news_ul .news_li > a .date {
  font-size: 1.7rem;
  margin-bottom: 1rem;
}
.news_ul .news_li > a .title {
  font-size: 2rem;
}
.news_ul .news_li > a .img_wrap {
  margin-right: 3.7rem;
  width: 18rem;
  padding-top: 12.3rem;
  border-radius: 2rem;
}
.news_ul .news_li > a .img_wrap img{
  border-radius: 2rem;
}
.news_ul .news_li > a .box{
  width: calc(100% - 18rem - 3.7rem);
}

/*==================================
	ページナビ
==================================*/
/*==================================
  ページナビ
==================================*/

.page_navigation .wp-pagenavi .nav-links{
  margin: 10rem 0 0;
}
.page_navigation .wp-pagenavi .page-numbers {
  font-size: 1.7rem;
  margin: 0 1.6rem;
  border-bottom: .1rem solid transparent;
}

.page_navigation .wp-pagenavi .page-numbers.prev,
.page_navigation .wp-pagenavi .page-numbers.next{
  font-size: 1.6rem;
  width: 4rem;
  height: 4rem;
  margin: 0 3.5rem;
}
.page_navigation .wp-pagenavi .nextpostslink::before,
.page_navigation .wp-pagenavi .previouspostslink::before {
  width: .9rem;
  height: 1.4rem;
}
.page_navigation .wp-pagenavi .nextpostslink.previouspostslink,
.page_navigation .wp-pagenavi .previouspostslink.previouspostslink {
  padding-left: 3.3rem;
  margin-right: 3rem;
}
.page_navigation .wp-pagenavi .nextpostslink.nextpostslink,
.page_navigation .wp-pagenavi .previouspostslink.nextpostslink {
  padding-right: 3.3rem;
  margin-left: 3rem;
}

.page_navigation .wp-pagenavi .list_back {
  margin-left: 5.8rem;
  margin-right: 5.8rem;
}

.page_navigation .wp-pagenavi .list_back > a > .list_icon {
  padding-left: 2.4rem;
}
.page_navigation .wp-pagenavi .list_back > a > .list_icon::before {
  width: 1.4rem;
  height: 1.4rem;
}
.page_navigation > ul {
  margin: 8rem 0 0;
}
.page_navigation > ul .link_page,
.page_navigation > ul .current_page {
  font-size: 1.7rem;
  margin: 0 1.8rem;
  border-bottom: .1rem solid transparent;
}
.page_navigation > ul .link_page.current_page,
.page_navigation > ul .current_page.current_page {
  border-bottom: .1rem solid;
}

.page_navigation .wp-pagenavi .prev.page-numbers::after{
	left: 1.5rem;
	top: 1.4rem;
	width: 0.9rem;
	height: 1.2rem;
	background-size: 0.9rem 1.2rem;
}

.page_navigation .wp-pagenavi .next.page-numbers::after{
	left: 1.6rem;
	top: 1.4rem;
	width: 0.9rem;
	height: 1.2rem;
	background-size: 0.9rem 1.2rem;
}

.page_navigation .wp-pagenavi .next.page-numbers:hover::after{
	transform: translateX(0.3rem);
}

.page_navigation .wp-pagenavi .prev.page-numbers:hover::after{
	transform: scale(-1, 1) translateX(0.3rem);
}


/*==========================================
  Layout
==========================================*/
/*==================================
  News
==================================*/
.pager_wrap {
  max-width: 58.8rem;
  margin: 6.7rem auto 0;
}
.pager_wrap ul .list a {
  width: 23.5rem;
  height: 6rem;
  border-radius: 3rem;
  font-size: 1.7rem;
}
.pager_wrap ul .prev a, .pager_wrap ul .next a {
  font-size: 1.6rem;
  height: 4rem;
}
.pager_wrap ul .prev a::before, .pager_wrap ul .next a::before {
  border-top: .4rem solid transparent;
  border-bottom: .4rem solid transparent;
}
.pager_wrap ul .prev a{
  padding-left: 5.5rem;
}
.pager_wrap ul .next a{
  padding-right: 5.5rem;
}

/*=========================================
	.prev
=========================================*/

.pager_wrap ul .prev a::after{
	width: 4rem;
	height: 4rem;
	border-radius: 99.9rem;
}

.pager_wrap ul .prev a::before{
	left: -5.4rem;
	width: 0.9rem;
	height: 1.2rem;
	background-size: 0.9rem 1.2rem;
}

.pager_wrap ul .prev a:hover::before {
  transform: scale(-1, 1) translateX(0.3rem);
}

/*==================================
  .next
==================================*/

.pager_wrap ul .next a{
  padding-right: 5.5rem;
}

.pager_wrap ul .next a::after{
	left: 5.5rem;
	width: 4rem;
	height: 4rem;
	border-radius: 99.9rem;
}

.pager_wrap ul .next a::before{
	left: 5.6rem;
	width: 0.9rem;
	height: 1.2rem;
	background-size: 0.9rem 1.2rem;
}

.pager_wrap ul .next a:hover::before {
  transform: translateX(0.3rem);
}


/*==================================
  Contact_base
==================================*/
/* input, textarea
--------------------------------*/
/* radio_button
--------------------------------*/
main#Contact span.error {
  margin: .5rem 0 0;
  font-size: 1.4rem;
}

main#Contact input[type=text] {
  font-size: 1.6rem;
  padding: 0 2.4rem;
  border: .1rem solid #F5F5F5;
  height: 7rem;
  border-radius: 1rem;
}

main#Contact input[type=text].zip {
  max-width: 21.5rem;
}

main#Contact .zip-wrap {
  max-width: 21.5rem;
  margin-right: 2.5rem;
}

main#Contact input[type=button].ad_btn {
  width: 17.2rem;
  height: 5rem;
  border-radius: 2.5rem;
  font-size: 1.6rem;
  border: .1rem solid #101010;
}

main#Contact input[type=checkbox] + label {
  padding-left: 4.5rem;
  font-size: 1.6rem;
}
main#Contact input[type=checkbox] + label::before {
  width: 2.9rem;
  height: 2.9rem;
}
main#Contact input[type=checkbox] + label::after {
  width: 2.9rem;
  height: 2.9rem;
}

main#Contact input[type=radio] + label {
  padding-left: 3.4rem;
  font-size: 1.6rem;
}
main#Contact input[type=radio] + label::before {
  width: 2.5rem;
  height: 2.5rem;
}
main#Contact input[type=radio] + label::after {
  width: 2.5rem;
  height: 2.5rem;
}

main#Contact .select-box {
  max-width: 34.5rem;
}

main#Contact .select-box select {
  font-size: 1.6rem;
  border: .1rem solid #F5F5F5;
  padding: 0 5rem 0 2.4rem;
  height: 7rem;
  border-radius: 1rem;
  background: url(/images/common/icon_select.svg) right 2.5rem center no-repeat #F5F5F5;
  background-size: 1.2rem auto;
}

main#Contact textarea {
  font-size: 1.6rem;
  padding: 1.2rem 2.4rem;
  border: .1rem solid #F5F5F5;
  border-radius: 1rem;
  min-height: 30rem;
}

main#Contact .submit_area {
  margin-top: 4.5rem;
}

main#Contact .submit_area span input[type=submit] {
  width: 33.5rem;
  height: 7rem;
  border-radius: 3.5rem;
  background: url(/images/common/icon_arrow_next_yellow.svg) right 2.5rem center no-repeat #101010;
  background-size: 1.1rem auto;
  border: .1rem solid #101010;
  font-size: 1.7rem;
  padding: 0 4rem;
}

main#Contact .submit_area ul.koumoku {
  gap: 2rem;
  margin: 4.5rem auto 0;
}

main#Contact .submit_area ul.koumoku .send input[type=submit] {
  width: 33.5rem;
  height: 7rem;
  border-radius: 3.5rem;
  background: url(/images/common/icon_arrow_next_yellow.svg) right 2.5rem center no-repeat #101010;
  background-size: 1.1rem auto;
  border: .1rem solid #101010;
  font-size: 1.7rem;
  padding: 0 4rem;
}

main#Contact .btn_back {
  margin-top: 4.5rem;
}

main#Contact .btn_back input {
  width: 33.5rem;
  height: 7rem;
  border-radius: 3.5rem;
	background: url(/images/common/icon_arrow_prev_yellow.svg) 2.5rem center no-repeat #101010;
  background-size: 1.1rem auto;
  border: .1rem solid #101010;
  font-size: 1.7rem;
  padding: 0 4rem;
	/* background: url(/images/common/icon_arrow_prev_black.svg) 2.5rem center no-repeat #fff; */
	/* background-color: red; */
}

main#Contact .contact_back {
  margin-top: 4.5rem;
}
main#Contact .contact_back a {
  width: 33.5rem;
  height: 7rem;
  border-radius: 3.5rem;
  background: url(/images/common/icon_arrow_next_yellow.svg) right 2.5rem center no-repeat #101010;
  background-size: 1.1rem auto;
  border: .1rem solid #101010;
  font-size: 1.7rem;
  padding: 0 4rem;
}

/*==================================
  Contact
==================================*/
main#Contact .agree_area {
  margin: 3rem 0 0;
}

main#Contact .need {
  font-size: 1.6rem;
}

main#Contact .notes {
  font-size: 1.6rem;
  margin-top: 1.2rem;
}
main#Contact table tr {
  border-bottom: .1rem dashed #BEBEBE;
  padding: 2.5rem 0 3rem;
}
main#Contact table tr th {
  font-size: 1.7rem;
  margin-bottom: 1.2rem;
}
main#Contact table tr td {
  font-size: 1.6rem;
}

main#Contact .check-list {
  gap: 2.5rem;
}

main#Contact .form_wrap,
main#Contact .send_comp {
  max-width: 110rem;
  padding: 17.5rem 0 10rem;
}

main#Contact .form_wrap > p,
main#Contact .send_comp > p {
  font-size: 1.6rem;
}

main#Contact .form_wrap .form_notes {
  margin-bottom: 3.7rem;
}

main#Contact .form_wrap .birthday_wrap {
  gap: 2rem;
}

main#Contact .form_wrap .birthday_wrap .birthday_item {
  width: 24rem;
  padding-right: 2.5rem;
}

main#Contact .form_wrap .birthday_wrap .birthday_item:after {
  height: 7rem;
  font-size: 1.6rem;
}

main#Contact .address .address_item + .address_item {
  margin-top: 1.5rem;
}

main#Contact .address .address_item dt {
  font-size: 1.6rem;
  width: 11rem;
  height: 7rem;
}

main#Contact .address .address_item dd {
  width: calc(100% - 11rem);
}

/*==================================
  Teaser
==================================*/
#teaser{
  height: 55rem;
  padding-top: 7.5rem;
}

.teaser_hd .eng{
  font-size: 9rem;
  margin-bottom: 2.5rem;
}
.teaser_hd .jap{
  font-size: 1.7rem;
}

.interview_teaser#teaser{
  height: 73rem;
  padding-top: 9.4rem;
}

.interview_teaser_cont .point{
  font-size: 1.8rem;
  margin-bottom: 2rem;
}

.interview_teaser_cont .hd{
  font-size: 3.5rem;
  margin-bottom: 4.2rem;
}

.interview_teaser_cont .position{
  font-size: 2.2rem;
  margin-bottom: 1.2rem;
}

.interview_teaser_cont .name{
  font-size: 1.6rem;
}

/*==================================
  Breadcrumb
==================================*/

#breadcrumb {
  padding: 5rem 0;
}

#breadcrumb ul {
  font-size: 1.1rem;
}

#breadcrumb ul li {
  font-size: 1.1rem;
}

#breadcrumb ul li + li:before {
  background-size: .5rem auto;
}
/*==================================
  News
==================================*/
.news_wrap{
  padding: 18rem 0 10rem;
}

.news_detail_wrap {
  padding: 17.5rem 0 10rem;
}

.news_detail_top{
  padding: 0 0 3.5rem;
  border-bottom: .1rem solid #858585;
}
.news_detail_cont{
  padding: 4.5rem 0 11rem;
  border-bottom: .1rem solid #858585;
}
.news_detail_top .date{
  font-size: 1.7rem;
  margin-bottom: 1.5rem;
}
.news_detail_top .title{
  font-size: 3rem;
}
.news_detail_top .categ{
  margin-left: 1.3rem;
  width: 9.5rem;
  height: 2.2rem;
  font-size: 1.3rem;
}
.news_detail_cont p{
  font-size: 1.6rem;
}
.news_detail_cont p+p{
  margin-top: 3.5rem;
}
.news_detail_cont figure img{
  border-radius: 1.5rem;
}
.news_detail_cont figure+figure,
.news_detail_cont p+figure,
.news_detail_cont figure+p{
  margin-top: 9rem;
}
.news_detail_cont a{
  border-bottom: .1rem solid;
}
.news_detail_cont a:hover{
  border-bottom: .1rem solid transparent;
}


/*==================================
  Privacy
==================================*/
.privacy_wrap {
  padding: 17.5rem 0 8rem;
}

.privacy_wrap p,
.privacy_wrap dd,
.privacy_wrap li {
  font-size: 1.6rem;
}

.privacy_wrap .privacy_notes {
  margin-bottom: 10rem;
}

.privacy_wrap dl + dl {
  margin-top: 5.5rem;
}

.privacy_wrap dl dt {
  font-size: 3rem;
  margin-bottom: 2.3rem;
}



/*==================================
  Faq
==================================*/
.faq_wrap {
  padding: 18rem 0 10rem;
}
.faq_wrap .container{
  /*max-width: 1340px;*/
}

.faq_list .faq_list_item + .faq_list_item {
  margin-top: 3rem;
}

.faq_list .faq_list_item dt {
  padding: 1.6rem 6rem 1.6rem 8.8rem;
  min-height: 8.5rem;
  font-size: 2.5rem;
  border-radius: 1rem;
  background-size: 8rem auto;
}

.faq_list .faq_list_item dt:before,
.faq_list .faq_list_item dt:after {
  width: 1.5rem;
  height: .1rem;
  right: 2.2rem;
}

.faq_list .faq_list_item dd {
  padding: 3rem 2.2rem 1.5rem 8.8rem;
  min-width: 7rem;
  font-size: 1.6rem;
}

.faq_list .faq_list_item .faq_q,
.faq_list .faq_list_item .faq_a {
  font-size: 2.3rem;
  width: 5.2rem;
  height: 5.2rem;
  left: 2.2rem;
  top: 1.6rem;
}


/*==================================
  Event
==================================*/
.event_wrap {
  padding: 18rem 0 9rem;
}

.event_wrap .cate_wrap {
  margin-bottom: 6.4rem;
}

.event_wrap .cate_wrap .select_box {
  max-width: 37rem;
  gap: 1rem;
  border: .1rem solid #0B0B0B;
  border-radius: 2.7rem;
  padding: 0 0 0 2.6rem;
}

.event_wrap .cate_wrap .select_box:before {
  font-size: 1.6rem;
}

.event_wrap .cate_wrap .select_box:after {
  right: 2.7rem;
  width: 1.4rem;
  height: 1.3rem;
  background-size: 1.4rem auto;
}

.event_wrap .cate_wrap .select_box select {
  font-size: 1.6rem;
  height: 5.5rem;
}

.event_ul {
  gap: 6.8rem 3rem;
}

.event_ul .event_li .img_wrap {
  border-radius: 2rem;
}

.event_ul .event_li .category_wrap {
  margin-top: 2.3rem;
  gap: .5rem;
}

.event_ul .event_li .category_wrap span {
  padding: 0 1.2rem;
  font-size: 1.3rem;
  border-radius: 1.1rem;
}

.event_ul .event_li .title {
  font-size: 1.7rem;
  margin-top: 1rem;
}

.event_ul .event_li .date {
  font-size: 1.7rem;
  margin-top: 1.5rem;
}

.event_detail {
  padding: 17.5rem 0 14rem;
}

.event_detail .event_head {
  margin-bottom: 4.6rem;
  border-bottom: .1rem solid #858585;
  padding-bottom: 3.5rem;
}

.event_detail .event_head .event_head_date {
  /* gap: 1.5rem; */
  margin-bottom: 1.2rem;
}

.event_detail .event_head .category_wrap {
	width: 14.5rem;
}

.event_detail .event_head .category_wrap {
  /* gap: 1.5rem; */
}

.event_detail .event_head .category_wrap span {
  font-size: 1.3rem;
  padding: 0.5rem 0;
  font-size: 1.3rem;
  border-radius: 99rem;
}

.event_detail .event_head .event_head_date .date {
  font-size: 1.7rem;
	width: calc(100% - 14.5rem);
	padding-left: 1.5rem;
}

.event_detail .event_head .title {
  font-size: 3rem;
}

.event_detail .event_body {
  padding-bottom: 11.3rem;
  border-bottom: .1rem solid #858585;
  font-size: 1.6rem;
}

.event_detail .event_body p {
  font-size: 1.6rem;
  margin-bottom: 6.5rem;
}


/*==================================
  Company
==================================*/
.company_wrap {
  padding: 18rem 0 15rem;
}

.company_info {
  border-top: .1rem solid #858585;
}

.company_info dl {
  border-bottom: .1rem solid #858585;
  padding: 2rem 0;
}

.company_info dl dt {
  width: 16.5rem;
  font-size: 1.6rem;
}

.company_info dl dd {
  width: calc(100% - 16.5rem);
  font-size: 1.6rem;
}

.company_info dl dd p {
  font-size: 1.6rem;
}

.company_info dl dd p + p {
  margin-top: 1.1rem;
}

.link_blank {
  padding-right: 1rem;
}

.link_blank:before {
  top: .6rem;
  width: .6rem;
  height: .6rem;
}

.company_banner {
  margin-top: 12rem;
}

.company_banner .company_banner_links {
  max-width: 90rem;
  height: 28.5rem;
  border-radius: 2rem;
  padding: 2.7rem 3rem;
}

.company_banner .company_banner_links:after {
  width: 4.8rem;
  height: 4.8rem;
  background-size: 1.5rem auto;
}

.company_banner .banner_parents {
  font-size: 1.4rem;
}

.company_banner .banner_parents span {
  font-size: 2rem;
  margin-right: 1.2rem;
  padding-right: 1.4rem;
}

.company_banner .banner_parents span:after {
  /* width: .2rem; */
  height: 1.3rem;
}

.company_banner .banner_title {
  font-size: 3.5rem;
  margin-bottom: .9rem;
}

.company_banner .banner_text {
  font-size: 1.5rem;
}

.page_bottom {
  background-size: 8rem auto;
  border-radius: 10rem 0 0 0;
  padding: 12.2rem 0 0;
}

.page_links {
  gap: 2rem;
  margin-bottom: 6.5rem;
}

.page_links a {
  background: url(/images/common/icon_arrow_next_black.svg) right 3rem center no-repeat #fff;
  background-size: 1.1rem auto;
  padding: 1rem 6rem 1rem 3.3rem;
  border-radius: 1.5rem;
  min-height: 12rem;
  font-size: 2.2rem;
  gap: .7rem;
}

.page_links a:hover{
	background: url(/images/common/icon_arrow_next_black.svg) right 2.4rem center no-repeat #fff;
	background-size: 1.1rem auto;
}

.page_links a span {
  font-size: 1.3rem;
}


/*==================================
  Amusement
==================================*/

.common_hd .common_hd_title {
  margin-bottom: 3rem;
}

.common_hd .common_hd_title .jap {
  font-size: 3.7rem;
}

.common_hd .common_hd_title .eng {
  padding-left: 2rem;
  font-size: 1.5rem;
  margin-bottom: 2rem;
}

.common_hd .common_hd_title .eng:before {
  top: .35rem;
  width: 1rem;
  height: 1rem;
}

.common_wrap .common_item + .common_item {
  margin-top: 12rem;
}

.common_wrap .common_item:nth-child(odd) .common_item_image {
  /*display: flex;*/
  /*flex-direction: column;*/
  /*align-items: flex-end;*/
}

.common_wrap .common_item:nth-child(odd) .common_item_image p{
  width: 100%;
}

.common_wrap .common_item:nth-child(even) .common_item_image img {

}

.common_wrap .common_item .common_item_image img {
  width: calc(100% + 8rem);
  max-width: calc(100% + 8rem);
}

.common_wrap .common_item:nth-child(odd) .common_item_image img {
  margin-left: -8rem;
  border-radius: 0 2rem 2rem 0;
  /*border-radius: 2rem;*/
}

.common_wrap .common_item:nth-child(even) .common_item_image img {
  border-radius: 2rem 0 0 2rem;
  /*border-radius: 2rem;*/
}

.common_txt p,
.common_txt,
.common_wrap .common_item,
.common_wrap .common_item p {
  font-size: 1.6rem;
}

.common_title {
  font-size: 3.2rem;
  margin-bottom: 2.3rem;
}

.amusement_item01 .common_hd .common_hd_image {
  width: 9.6rem;
  right: 3.5rem;
  bottom: -1.1rem;
}

.amusement_item02 .common_hd .common_hd_image {
  width: 30rem;
  right: 3.5rem;
  bottom: 1.1rem;
}

.amusement_item02 .common_hd .common_hd_image picture img{
  width: 12.5rem;
}
.amusement_item02 .common_hd .common_hd_image picture+picture img{
  width: 17.1rem;
}

/*==================================
  About
==================================*/

.about_wrap .common_hd .common_hd_title {
  margin-bottom: 7.6rem;
}

.about_wrap .common_hd .common_hd_image {
  width: 43rem;
  right: 7.6rem;
  bottom: -2.5rem;
}

.about_wrap .about_caption {
  margin-top: 2rem;
}

/*==================================
  Night Golf
==================================*/

.nightgolf_wrap {
  padding: 16.8rem 0 12rem;
}

.text_box .text_hd {
  font-size: 4rem;
  margin-bottom: 3rem;
}

.text_box p {
  font-size: 1.6rem;
}

.nightgolf_wrap .text_box {
  margin-bottom: 9.5rem;
}

.nightgolf_wrap .common_wrap .common_item .common_item_box {
  padding-bottom: 6rem;
}

/*==================================
  Hamanishi Yellow
==================================*/
.section_wrap .section_item{
  align-items: center;
}
.section_wrap .section_item + .section_item {
  margin-top: 5.4rem;
}

.section_wrap .section_item .section_item_image img {
  border-radius: 2rem;
}

.section_wrap .section_item,
.section_wrap .section_item p {
  font-size: 1.6rem;
}

.section_wrap .section_item p+p{
  margin-top: 3.5rem;
}

.hamanishi_yellow_wrap .section_item_box {
  padding-top: 3.4rem;
}

.hamanishi_yellow_hd {
  font-size: 4rem;
}

.hamanishi_yellow_image {
  margin-top: -3rem;
}

/*==================================
  Features
==================================*/

.btn_links {
  max-width: 29rem;
  height: 6rem;
  border-radius: 3rem;
  background: url(/images/common/icon_arrow_next_yellow.svg) right 2.7rem center no-repeat #101010;
  background-size: 1.1rem auto;
  border: .1rem solid #101010;
  font-size: 1.6rem;
  padding: 0 6.6rem 0 3.3rem;
}

@media (min-width: 751px) {
  .btn_links:hover {
    background: url(/images/common/icon_arrow_next_black.svg) right 1.5rem center no-repeat #fff;
    background-size: 1.1rem auto;
    color: #101010;
  }
}

.button_list {
  gap: 1.2rem 1.4rem;
}

.button_list li {
  width: calc((100% - 1.4rem) / 2);
}

.features_wrap {
  padding: 17rem 0 18rem;
}

.features_wrap .features_buttons {
  margin-top: 3rem;
}

.features_top {
  margin-bottom: 7rem;
}

.heading_large {
  margin-bottom: 3.8rem;
}

.heading_large .eng {
  font-size: 6.5rem;
  margin-right: 2.5rem;
}

.heading_large .jap {
  padding-left: 2.8rem;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.heading_large .jap:before {
  width: .1rem;
  height: 2.2rem;
  top: .2rem;
}

.features_view {
  margin-top: 16.5rem;
}

.features_view .heading_large {
  margin-bottom: 7rem;
}

.features_view .features_view_box {
  max-width: 92.6rem;
}

/*==================================
  Philosophy
==================================*/
.philosophy_list {
  margin-bottom: 12.2rem;
}

.philosophy_list .philosophy_list_item {
  border-radius: 2rem;
  padding: 4.8rem 3rem 5.6rem 4.5rem;
}

.philosophy_list .philosophy_list_item + .philosophy_list_item {
  margin-top: 6rem;
}

.philosophy_list .philosophy_list_hd {
  font-size: 3.8rem;
  margin-bottom: 2.7rem;
}

.philosophy_list .philosophy_count {
  left: 4.5rem;
  padding: 0 2.3rem;
  height: 3.8rem;
  font-size: 1.2rem;
  gap: .7rem;
  border-radius: 1.9rem;
}

.philosophy_list .philosophy_count span {
  font-size: 2.3rem;
}

.ul_list li {
  padding-left: 2rem;
  font-size: 1.6rem;
}

.ul_list li:before {
  width: 1rem;
  height: 1rem;
  top: 1rem;
}

.ul_list li + li {
  margin-top: 1rem;
}

/*==================================
  Iccards
==================================*/
.iccards_wrap {
  padding: 17rem 0 0;
}

.iccards_about{
  padding: 9.4rem 0 12rem;
}

.iccards_about_img{
  grid-gap: 3rem;
}

.iccards_about_img img{
  border-radius: 2rem;
}

.iccards_about_list{
  margin-top: 5.2rem;
}

.access_wrap .iccards_about_list{
  margin-top: 3.8rem;
}

.iccards_about_list li+li{
  margin-top: 3.2rem;
}

.dot_ttl {
  padding-left: 3.4rem;
  font-size: 2.4rem;
  margin-bottom: 1.4rem;
}

.dot_ttl:before {
  top: .8rem;
  width: 2rem;
  height: 2rem;
}

.iccards_table_hd{
  margin-top: 2.4rem;
}

.iccards_table_hd span{
  font-size: 2.2rem;
  padding: .4rem 4.5rem;
  border-radius: 2.2rem;
}

.iccards_table{
  margin-top: 2.5rem;
}

.iccards_table th,
.iccards_table td{
  height: 6rem;
  padding: 1rem;
}

.iccards_table th{
  font-size: 1.6rem;
}

.iccards_table td{
  font-size: 2rem;
}

.iccards_table td span.text{
  font-size: 1.5rem;
}

.gray_bottom{
  border-radius: 10rem 0 0 0;
}

.iccards_points{
  /* padding-top: 10.8rem; */
}

.iccards_points_list{
  margin-top: 6.4rem;
  grid-gap: 3rem;
}

.iccards_points_list li{
  border-radius: 2rem;
  padding-top: 3.6rem;
	padding-bottom: 3rem;
}

.iccards_points_list p{
  font-size: 2.5rem;
}

.iccards_points_list .ttl{
  font-size: 2.2rem;
  padding: .4rem 1.4rem;
  border-radius: 2.4rem;
}

.iccards_points_list .ttl span{
  font-size: 2.7rem;
}

.iccards_lost{
  padding: 10.8rem 0 8rem;
}

.iccards_points_list p span{
	font-size: 1.6rem;
	margin-top: 0.8rem;
}

/*==================================
  Access
==================================*/
.access_wrap {
  padding: 17rem 0 11rem;
}

.access_map {
  margin-top: 12rem;
}

.access_map iframe {
  border-radius: 2rem;
}

.access_list{
  margin-top: 4.4rem;
}

.access_list dt{
  width: calc(80% - 2rem);
}

.access_list dd img{
  max-height: 14.3rem;
}

.access_list li+li{
  margin-top: 1.5rem;
}

.access_list .place{
  height: 4rem;
  border-radius: 2rem;
  font-size: 1.6rem;
}

.access_list .route{
  width: calc(56% - 1.8rem);
  padding-right: 1.8rem;
}

.access_list .route:before{
  height: .3rem;
  /*background-image: radial-gradient(circle, #101010 50%, transparent 50%);*/
  /*background-size: .6rem .3rem; */
}

.access_list .route:after{
  width: 2.4rem;
  background: url(../images/access/icon_car.svg)no-repeat right center #fff;
  background-size: 2rem auto;
  padding-left: .4rem;
}

.access_list .route p{
  font-size: 2rem;
  padding: 0 1.8rem;
}

.access_list .route p span{
  font-size: 3rem;
}

/*==================================
  Beginners
==================================*/
.beginners_wrap{
  padding-top: 16.7rem;
}

.beginners_top_txt{
  font-size: 2rem;
}

.beginners_top_list{
  margin: 4.8rem 0;
}

.beginners_top_list li{
  padding-left: 3.9rem;
  background: url(../images/beginners/icon_li.svg)no-repeat left top .3rem;
  background-size: 2.65rem auto;
  font-size: 2.2rem;
}

.beginners_top_list li+li{
  margin-top: 2.2rem;
}

.bg_span{
    grid-gap: 1.75rem;
}
.bg_span span{
    font-size: 2.4rem;
    padding: 0 3rem;
    border-radius: 6rem;
}

.beginners_top_span{
  margin: 8.5rem 0 15rem;
}

.beginners_wrap .common_wrap{
  padding-bottom: 15rem;
}

.beginners_wrap .common_wrap .common_item .common_item_box{
  width: calc(50% - 9rem);
}

.beginners_wrap .common_hd .common_hd_title{
  margin-right: -2rem;
}

.flow_list{
  margin: 4rem 0 6rem;
}

.flow_list li+li{
  margin-top: 3rem;
}

.flow_list li{
  border-radius: 2rem;
  padding: 5.5rem 6rem 5.5rem 4.4rem;
}

.flow_list dl{
  padding-left: 10rem;
}

.flow_list dl:before{
  left: 3.2rem;
  top: 8.9rem;
  width: .2rem;
  height: calc(100% + 3rem);
  background-image: linear-gradient(to bottom, #A7A7A7 0%,#A7A7A7 60%, transparent 60%);
  background-size: .2rem 1rem;
}

.flow_list dd{
  width: calc(62% - 6rem);
}

.flow_list dt img{
  border-radius: 1.5rem;
}

.flow_step{
  width: 6.5rem;
  height: 6.5rem;
  font-size: 1.2rem;
}

.flow_step span{
  font-size: 2.3rem;
}

.flow_list_ttl{
  font-size: 3rem;
  margin-bottom: 2rem;
}


/*==================================
  challenge_cup
==================================*/
.challenge_cup_wrap{
  padding: 16.7rem 0 4rem;
}

.challenge_cup_section{
  margin-top: 9rem;
  padding-bottom: 12.2rem;
}

.challenge_cup_list{
  grid-gap: 2rem;
  margin-bottom: 6.8rem;
}

.challenge_cup_list li{
  font-size: 2.2rem;
  padding: 1.6rem;
  border-radius: 6rem;
}

.competition_type{
  padding-top: 11.8rem;
}

.competition_type_list{
  grid-gap: 2rem;
}

.competition_type_list li{
  border-radius: 1.5rem;
  padding: 2rem 1.5rem;
}

.competition_type_list .ttl{
  padding: .5rem 1rem;
  border-radius: 4rem;
  font-size: 2rem;
  margin-bottom: 2rem;
}

.competition_type_list .txt{
  font-size: 1.6rem;
  padding: 0 1.8rem;
  padding-left: calc(1.8rem + 1.4em);
}

.competition_type_list .txt span{
  font-size: 1.2rem;
}

.competition_type_btn {
  margin-top: 5rem;
}



/*==================================
  drivingrange
==================================*/
.drivingrange_wrap{
  padding: 16.7rem 0 10rem;
}

.drivingrange_top{
  padding-bottom: 13rem;
}

.drivingrange_top_img{
  margin-top: 4.5rem;
}

.drivingrange_top_img .site{
  left: 2rem;
  top: 2rem;

  width: 11.2rem;
  height: 11.2rem;
  font-size: 1.8rem;
}

.drivingrange_top_img .site span{
  font-size: 2.7rem;
}

.drivingrange_banner{
  margin: 7.5rem auto 0;
  max-width: 106rem;
}

.drivingrange_banner:hover a .drivingrange_banner_arrow::after {
  transform: translateX(0.4rem);
}

.competition_type_btn{
  margin-top: 6.3rem;
}

.flow_list02{
  margin: 4rem 0 6rem;
}

.flow_list02 li+li{
  margin-top: 3rem;
}

.flow_list02 li{
  border-radius: 2rem;
  padding: 5.5rem 4.4rem;
}

.flow_list02_box:before{
  left: 3.2rem;
  top: 8.9rem;
  width: .2rem;
  height: calc(100% + 3rem);
  background-size: .2rem 1rem;
}

.flow_list02_hd{
  grid-gap: 2.5rem;
}

.flow_list02_hd span.text{
  font-size: 3rem;
}

.only_txt{
  min-height: 6.5rem;
}

.flow_list02_dl02 dd{
  width: calc(53% - 5rem);
}

.flow_list02_dl02 dt img{
  border-radius: 1.5rem;
}

.flow_step02{
  min-width: 6.5rem;
  width: 6.5rem;
  height: 6.5rem;
  font-size: 1.2rem;
}

.flow_step02 span{
  font-size: 2.3rem;
}

.flow_list02_ul01{
  padding: 2rem 0;
  border-radius: 1.5rem;
}

.flow_list02_ul01 li{
  padding: 0 2.5rem!important;
  margin-top: 0!important;
}

.flow_list02_ul01 li:nth-of-type(even){
  background-size: .1rem .6rem;
}

.flow_list02_ul01 .ttl{
  font-size: 1.8rem;
  height: 3.5rem;
  border-radius: 2rem;
}

.flow_list02_box .txt{
  font-size: 1.5rem;
}

.flow_list02_box .txt span.text{
  font-size: 2.2rem;
}

.flow_list02_ul01 .txt{
  min-height: 9rem;
  padding-top: 1rem;
}

.flow_list02_dl01{
  margin: 3.3rem 0;
}


.flow_list02_dl02 .txt b{
  margin-bottom: .5rem;
}

.flow_list02_btn{
  margin-top: 3rem;
  max-width: 23.5rem;
}

.relax_space{
  padding-top: 12.5rem;
}

.relax_space_list{
  grid-gap: 2.8rem;
  margin-top: 4.6rem;
}

.relax_space_list img{
  border-radius: 1.5rem;
}

.drivingrange_flow{
  padding-bottom: 6.5rem;
}


/*==================================
  Member
==================================*/
.member_wrap{
  padding-top: 16.7rem;
}

.member_benefits{
  padding-bottom: 12rem;
  margin-top: 12rem;
}

.member_benefits_list{
  margin-top: 5rem;
  grid-gap: 5rem 3rem;
}

.member_benefits_list li{
  border-radius: 2rem;
  height: 15.5rem;
  padding-top: .5rem;
}

.member_benefits_list p{
  font-size: 2.5rem;
}

.member_benefits_list p span{
  font-size: 3.3rem;
}

.member_benefits_list p b{
  font-size: 2rem;
	font-weight: 700;
}

.member_benefits_list .ttl{
  font-size: 1.2rem;
  height: 3.8rem;
  width: 20.5rem;
  border-radius: 2.4rem;
}

.member_benefits_list .ttl span{
  font-size: 2.3rem;
}

.member_system{
  padding: 10rem 0;
}

.member_system_hd{
  font-size: 1.8rem;
  margin-bottom: 2rem;
}

.member_table th{
  font-size: 1.6rem;
  padding: 1.6rem 3rem;
}

.member_table td{
  font-size: 1.8rem;
  padding: 1.2rem 4rem;
}

.member_system_btn{
  margin-top: 5rem;
}


/*==================================
  lessons
==================================*/
.lessons_wrap{
  padding-top: 16.7rem;
}

.lessons_features {
  padding: 7.7rem 0 0;
}

.lessons_features_list{
  grid-gap: 2rem;
}

.lessons_features_list li{
  border-radius: 1.5rem;
  padding: 2.2rem 3.7rem 2.8rem;
}

.lessons_features_list .ttl{
  margin: 0 -2.2rem;
  padding: .5rem 1rem;
  border-radius: 4rem;
  font-size: 2rem;
  margin-bottom: 2rem;
}

.lessons_features_list .txt{
  font-size: 1.6rem;
  margin-top: 1.5rem;
}

.lessons_charge{
  padding: 8rem 0 13.6rem;
}

.lessons_coach_item{
  border-radius: 2rem;
  padding: 5.7rem 5rem 6.5rem;
}

.lessons_coach_item + .lessons_coach_item{
  margin-top: 2.5rem;
}

.lessons_coach_cont{
  width: calc(67.5% - 4.7rem);
}

.lessons_coach_name dt{
  margin-right: 1rem;
  font-size: 2rem;
}

.lessons_coach_name dt span{
  font-size: 2.5rem;
}

.lessons_coach_name dd{
  width: calc(100% - 31.4% - 1rem);
  font-size: 1.6rem;
}

.lessons_coach_list{
  padding-top: 3rem;
  margin-top: 3.5rem;
  grid-gap: 1rem 5%;
}

.lessons_coach_list li{
  font-size: 1.6rem;
}

.lessons_coach_table{
  margin-top: 5rem;
}

.lessons_coach_table th{
  font-size: 1.6rem;
  padding: 1.6rem 2.5rem;
}

.lessons_coach_table td{
  font-size: 1.7rem;
  padding: 2.5rem;
}

.time_schedule{
  padding: 12rem 0 13.5rem;
}

.time_schedule_img{
  max-width: 79rem;
  margin: 6rem auto 0;
}

.time_schedule_img img{
  width: 100%;
}

.lessons_reservation{
  padding: 13rem 0 6.5rem;
}

.lessons_reservation_dl dt{
  font-size: 1.6rem;
}

.lessons_reservation_dl a{
  width: 50rem;
  height: 9rem;
  border-radius: 4.5rem;
  font-size: 4rem;
}

.lessons_reservation_dl a span{
  padding-left: 4.7rem;
  background: url(/images/lessons/tel.svg) left center no-repeat;
  background-size: 3rem auto;
}


/*==================================
  putting_bunker
==================================*/
.putting_bunker_wrap{
  padding: 16.7rem 0 0;
}

.putting_bunker_top{
  padding-top: 4.5rem;
}

.iccards_about_img .place{
  margin-top: 2.2rem;
  padding-left: 2rem;
  font-size: 1.6rem;
}

.iccards_about_img .place span{
  font-size: 1.7rem;
  margin-right: 1rem;
}

.iccards_about_img .place:before {
  top: .65rem;
  width: 1rem;
  height: 1rem;
}

.putting_bunker_charge{
  padding: 11rem 0 10rem;
}

.putting_bunker_table{
  margin-top: 3.5rem;
}

.putting_bunker_table dt,
.putting_bunker_table dd{
  padding: 1.8rem 1rem;
}

.putting_bunker_table dt{
  font-size: 1.6rem;
}

.putting_bunker_table dd{
  font-size: 2rem;
  padding: 3.3rem 1rem;
}

.putting_bunker_list{
  margin-top: 6.8rem;
  grid-gap: 3.9rem;
}

.putting_bunker_list li{
  max-width: calc(50% - 2rem);
}

.putting_bunker_list a{
  width: 36.5rem;
  height: 7rem;
  font-size: 1.7rem;
  border-radius: 3.5rem;
}

/*==================================
  kawamura
==================================*/
.interview_top{
  padding: 17rem 0 14rem; 
}

.interview_top dl+dl{
  margin-top: 8.5rem;
}

.interview_top_item02{
  grid-gap: 7.5rem;
}

.interview_top_item_img img{
  border-radius: 2rem;
}

.interview_top_item_cont{
  max-width: calc(100% - 39.5% - 9rem);
  grid-gap: 3rem;
}

.interview_top_item_cont .ttl{
  font-size: 3rem;
  margin-bottom: 1.8rem;
}

.interview_schedule{
  padding: 14rem 0;
  border-radius: 0 0 10rem 0;
}

.interview_schedule_img+.interview_schedule_img {
  margin-top: 1.5rem;
}

.interview_others{
  padding: 14rem 0;
}

.interview_others_list{
  grid-gap: 3.3rem;
}


.interview_others_list .img_box{
  border-radius: 2rem;
}

.interview_others_list .name{
  margin-top: 2.2rem;
  padding-left: 2rem;
  font-size: 1.7rem;
  line-height: 2.6rem;
}

.interview_others_list .name:before {
  top: .7rem;
  width: 1.2rem;
  height: 1.2rem;
}

/*==================================
  info
==================================*/
.info_top{
  padding: 16.5rem 0;
}

.info_item+.info_item{
  margin-top: 11rem;
}

.info_hd{
  font-size: 2.5rem;
  margin-bottom: 2.5rem;
}

.info_table th,
.info_table td{
  font-size: 1.6rem;
  padding: 1.7rem 0;
}

.info_table th{
  padding: 1.7rem 1.5rem;
}

.info_btn{
  margin-top: 7rem;
}

/*==================================
  personnel
==================================*/
.personnel_top{
  padding: 16.7rem 0 10rem;
}

.personnel_list{
  margin-bottom: 12.2rem;
}

/*==================================
  favorite
==================================*/
.favorite_top{
  padding: 17.5rem 0 13.4rem;
}

.favorite_top_txt{
  font-size: 5.4rem;
}

.favorite_top_txt span{
  font-size: 2.8rem;
}

.favorite_sec.page_bottom{
  padding: 16.5rem 0 14.5rem;
  border-radius: 0 0 10rem 0;
}

.favorite_illust01{
  right: -9.2rem;
  top: -30.4rem;
  width: 53.7rem;
}

.favorite_illust02{
  left: 6rem;
  top: -48rem;
  width: 16.2rem;
}


.good_points{
  padding: 17.5rem 0 16.6rem;
}

.good_points_item{
  margin-top: 9rem;
}

.good_points_item+.good_points_item{
  padding-top: 7rem;
  margin-top: 7rem;
}

.good_points_item .common_hd .common_hd_title .jap{
  font-size: 3rem;
}

.good_points_item .common_hd .common_hd_title{
  margin-bottom: 2.2rem;
}

.good_points_item .common_hd .common_hd_title .eng{
  margin-bottom: 1.7rem;
}

.good_points_item ul{
  margin-top: 5.4rem;
  grid-gap: 5rem;
}

.good_points_item .ttl{
  font-size: 2.5rem;
  margin: 2rem 0 1.3rem;
}

.good_points_item .txt{
  font-size: 1.6rem;
}

.good_points_item .btn{
  margin-top: 2.4rem;
}

/*==================================
  recruit
==================================*/
.recruit_top{
  padding: 17.5rem 0 11rem;
}

.recruit_top .common_item_box p+p{
  margin-top: 3.5rem;
}

.recruit_page.page_bottom{
  padding: 17.5rem 0 16.6rem;
}
.recruit_page .common_item_box .btn_links{
  margin-top: 4rem;
  max-width: 23.5rem;
}

.recruit_illust01{
  left: 22.2rem;
  bottom: 37.3rem;
  width: 26.5rem;
}

.recruit_illust02{
  right: 2rem;
  bottom: 31.2rem;
  width: 9.5rem;
}

.recruit_interview{
  padding: 13.4rem 0 15rem;
}

.interview_others_list .intro{
  font-size: 1.9rem;
  padding: 1.7rem 0;
}

.recruit_interview_list{
  margin-top: 16.5rem;
  grid-gap: 3rem;
}

.recruit_interview_list a::before {
  position: absolute;
  right: 3rem;
  bottom: 3rem;
  width: 6rem;
  height: 6rem;
}

.recruit_interview_list a::after {
  right: 3rem;
  bottom: 3rem;
  width: 6rem;
  height: 6rem;
  background-size: 1.5rem auto;
}

.recruit_interview_list a:hover::after {
  transform: translateX(0.4rem);
}


.recruit_interview_list .img_box{
  border-radius: 2rem;
}

.recruit_interview_list .jap{
  font-size: 2rem;
  margin-bottom: .8rem;
}

.recruit_interview_list .eng{
  font-size: 5.5rem;
}

.recruit_bottom.page_bottom{
  padding-top: 12.8rem;
  border-radius: 0 10rem 0 0;
}

.recruit_bottom_box{
  margin-bottom: 6rem;
}

.recruit_bottom_box .ttl{
  font-size: 3.5rem;
}

.recruit_bottom_box .txt{
  font-size: 1.7rem;
  margin: 1.3rem 0 4.5rem;
}

.recruit_bottom_box .btn_links{
  max-width: 55rem;
  height: 10rem;
  border-radius: 5rem;
  font-size: 3rem;
  background-size: 1.7rem auto;
  background-position: right 5rem center;
}

@media (min-width: 751px) {
	.recruit_bottom_box .btn_links:hover {
		background: url(/images/common/icon_arrow_next_black.svg) right 3rem center no-repeat #fff;
		background-size: 1.7rem auto;
		color: #101010;
	}
}

.recruit_bottom_box .btn_links .font_eng{
  font-size: 4.1rem;
}


/*==================================
  times_charge
==================================*/
.times_charge_wrap{
  padding-top: 17.5rem;
}

.times_charge_wrap .dot_ttl{
  margin-bottom: 2rem;
}

.times_charge_top .dot_ttl{
  margin-bottom: 2.5rem;
}

.times_charge_top_box{
  border-radius: 1.5rem;
  font-size: 2rem;
  padding: 3.5rem 1.5rem;
}

.driving_range{
  padding-top: 12rem;
}

.driving_range_img{
  margin-bottom: 6rem;
}

.driving_range_item+.driving_range_item{
  margin-top: 4.8rem;
}

.driving_range_table01 th,
.driving_range_table01 td{
  font-size: 1.7rem;
  padding: 1.2rem 1rem;
}

.driving_range_table01 th{
  height: 6rem;
}

.driving_range_table01 td span.text{
  font-size: 1.9rem;
}

.driving_range_table01 td span{
  font-size: 2rem;
  padding-left: 4rem;
  background: url(/images/times_charge/icon_ic.svg) left center no-repeat;
  background-size: 3rem auto;
}

.driving_range_table01 td b{
  font-size: 2rem;
}

.driving_range_table01 thead th{
  height: 5.4rem;
}

.driving_range_note{
  margin-top: 3.3rem;
  grid-gap: 1rem 1em;
}

.driving_range_note li{
  font-size: 1.6rem;
}

.driving_range_note span{
  width: 2.5rem;
  background: url(/images/times_charge/icon_ic.svg) left center no-repeat;
  background-size: auto 1.7rem;
}

.driving_range_btn{
  margin-top: 6rem;
}

.driving_range_btn .btn_links{
  max-width: 35.5rem;
  height: 7rem;
  border-radius: 3.5rem;
  font-size: 1.7rem;
}

.play_fee{
  padding: 11.2rem 0 9.6rem;
}

.play_fee_item dl+dl{
  margin-top: 3rem;
}

.play_fee_item dl{
  border-radius: 1.5rem;
}

.play_fee_item dt{
  padding: 2rem;
}

.play_fee_item .time{
  font-size: 2.2rem;
  padding: .4rem 6rem;
  border-radius: 5rem;
}

.play_fee_item .ttl{
  font-size: 2.5rem;
  margin-top: .7rem;
}

.play_fee_item dd{
  padding: 2.5rem 1rem 3.5rem;
}

.play_fee_item .before_price{
  font-size: 2rem;
  padding-right: 9rem;
  background: url(/images/times_charge/arrow_red.svg) right 2rem bottom 1rem no-repeat;
  background-size: auto 2.5rem;
}

.play_fee_item .before_price span.font_eng{
  font-size: 4.7rem;
}

.after_box{
  grid-gap: .8rem;
}

.play_fee_item .after_price{
  font-size: 2rem;
}

.play_fee_item .after_price span.font_eng{
  font-size: 6.4rem;
}

.play_fee_item .off_price{
  border-radius: 1rem;
  font-size: 1.9rem;
  padding: 0 1.8rem;
}

.play_fee_item .off_price span.font_eng_2{
  font-size: 4.6rem;
}

.play_fee_item .off_price span.font_eng_1{
  font-size: 5rem;
}

.dot_ttl font{
  font-size: 2rem;
}

.short_course_note{
  font-size: 2rem;
  margin-bottom: 3rem;
}

.play_fee_item .icon-ic{
	padding-left: 2.4rem;
	top: 0.3rem;
}

.play_fee_item .icon-ic::after{
	left: -1.6rem;
	bottom: 0.8rem;
	width: 3.6rem;
	height: 2.4rem;
	padding-left: 4rem;
	background-size: 3.6rem 2.4rem;
}


/*==================================
  main_v
==================================*/
.main_v{
  height: 75rem;
  padding-top: 10rem;
}

.mv_hd .eng{
  font-size: 7rem;
  margin-bottom: 4.3rem;
}
.mv_hd .jap{
  font-size: 2.3rem;
  max-width: 40rem;
}

/*==================================
  mv_hd
==================================*/

.mv_hd{
	top: 1.3rem;
}

.mv_hd .eng{
  font-size: 7rem;
  margin-bottom: 4.3rem;
}
.mv_hd .jap{
  font-size: 2.3rem;
	max-width: none;
	width: 100%;
}

.title-anime .text-wrap:nth-last-of-type(2) {
	margin-top: 0.8rem;
}

.title-anime .text-wrap .text.en {
  font-size: 7rem;
	height: 7.7rem;
}

.title-anime .text-wrap .text.jp {
  margin-top: 3.1rem;
  font-size: 2.3rem;
	max-width: none;
	width: 100%;
  padding-bottom: 0.3rem;
}


/*==================================
  top
==================================*/
.js-image-scroll,
.js-image-scroll ul {
  /* grid-gap: 2.5rem; */
}

.js-image-scroll li{
  width: 44.5rem;
	margin-right: 2.5rem;
}

.js-image-scroll li:nth-of-type(odd) {
  margin-top: 6.5rem;
}

.js-image-scroll .img_box{
  border-radius: 2rem;
}

.top_sec01{
  padding-top: 10rem;
}

.top_sec01 .recruit_interview_list .cont{
  padding: 5rem 0;
}

.top_sec01 .recruit_interview_list .eng{
  font-size: 5rem;
}

.top_sec01 .recruit_interview_list .jap{
  font-size: 1.6rem;
  margin: 1.4rem 0 0;
}

.top_sec02.page_bottom{
  margin-top: -11rem;
  padding: 30.8rem 0 13.3rem;
  border-radius: 0 0 0 10rem;
}

.top_features{
  padding-bottom: 12rem;
}

.top_sec02_eng{
  font-size: 2rem;
} 

.top_sec02_eng:before{
  right: calc(50% + 5.5rem);
  width: 5.8rem;
  height: 7.7rem;
}

.top_sec02_ttl{
  font-size: 4.6rem;
  margin: 2.5rem 0 3.5rem;
}

.top_sec02_ttl span.text{
  font-size: 5.4rem;
}

.top_sec02_txt{
  font-size: 1.9rem;
}

.top_sec02_btn{
  margin-top: 4rem;
}

.view_more.btn_links{
  max-width: 23.5rem;
  font-size: 1.7rem;
}

.top_sec02_illust01{
  right: calc(50% + 45rem);
  bottom: 24.2rem;
  width: 13.3rem;
}

.top_sec02_illust02{
  left: calc(50% + 41.6rem);
  bottom: 13rem;
  width: 16.8rem;
}

.top_sec03{
  padding: 15rem 0;
}

.top_sec03_illust01{
  left: 27.8rem;
  bottom: 40rem;
  width: 24.5rem;
}

.top_sec03_illust02{
  right: 4.5rem;
  bottom: 42.7rem;
  width: 9.5rem;
}

.top_sec04.page_bottom{
  padding: 12.2rem 0 21rem;
  border-radius: 0 10rem 0 0;
}

.event_slick.event_ul {
  margin-right: -8rem;
}

.event_slick.event_ul .event_li {
  width: 34.2rem;
  max-width: 34.2rem;
  margin-right: 3rem;
}


/*======================================================*/

/* .event_slick .slick-prev,
.event_slick .slick-next{
    width: 7.2rem;
    height: 7.2rem;
    background: url(../images/top/slick_prev_gray.svg)no-repeat center center #fff;
    background-size: 1rem auto;
}
.event_slick .slick-next{
    background: url(../images/top/slick_next_gray.svg)no-repeat center center #fff;
    background-size: 1rem auto;
    left: 7.2rem;
    right: auto;
} */

/* .event_slick .slick-next:before{
  width: .2rem;
  height: 2.9rem;
} */

.event_slick .slick-prev,
.event_slick .slick-next{
	width: 7.2rem;
	height: 7.2rem;
}

.event_slick .slick-next{
	left: 7.2rem;
}

.event_slick .slick-prev::after,
.event_slick .slick-next::after{
	margin-left: -0.4rem;
	margin-top: -0.7rem;
	width: 1rem;
	height: 1.2rem;
	background-size: 1rem 1.2rem;
}

.event_slick .slick-prev:hover::after{
	transform: translateX(-0.3rem);
}
.event_slick .slick-next:hover::after{
	transform: translateX(0.3rem);
}

.event_slick .slick-next:before{
  width: 0.2rem;
  height: 2.9rem;
}

/*======================================================*/


.top_news{
  padding-bottom: 15rem;
}

.top_news_dl dd{
  padding-top: 2.5rem;
}

.top_news_btn{
  width: 23.5rem;
}

.recruit_interview_list .abs{
  right: 3rem;
  top: 4rem;
}

.recruit_interview_list .abs_about{
  font-size: 1.3rem;
}

.recruit_interview_list .abs_recruit span{
  font-size: 2rem;
}

.recruit_interview_list .abs_recruit span.text{
  font-size: 1.45rem;
  padding-left: 1.2rem;
  margin-left: 1.2rem;
  border-left: .2rem solid;
}

.recruit_interview_list .ttl01{
  font-size: 1.9rem;
  margin-bottom: 1rem;
}

.recruit_interview_list .txt01{
  font-size: 1.7rem;
  margin-top: 2.5rem;
}

.recruit_interview_list .ttl02{
  font-size: 4.3rem;
}

.recruit_interview_list .txt02{
  font-size: 1.5rem;
  margin-top: 1.5rem;
}

.top_bottom.page_bottom{
  padding: 23rem 0 3.5rem;
  margin-top: -12.5rem;
}

/*==================================
  shortcourse
==================================*/
.shortcourse_top{
  padding: 16.7rem 0 13.6rem;
}

.text_box p+p{
  margin-top: 3rem;
}

.shortcourse_map{
  margin: 3rem auto 6rem;
}

.shortcourse_table td,
.shortcourse_table th{
  height: 6rem;
  padding: 0 .8rem;
}

.shortcourse_table th{
  font-size: 1.6rem;
}

.shortcourse_table td{
  font-size: 1.7rem;
}

.shortcourse_table thead td{
  font-size: 1.8rem;
  height: 4.8rem;
}

.shortcourse_top_btn{
  margin-top: 7.5rem;
}

.drivingrange_wrap .btn_links,
.shortcourse_top_btn .btn_links{
  max-width: 33.5rem;
  height: 7rem;
  border-radius: 3.5rem;
}

.shortcourse_bottom.page_bottom{
  padding-top: 11.6rem;
}

.shortcourse_item{
  border-radius: 2rem;
  padding: 7rem 5rem 5rem;
}

.shortcourse_item+.shortcourse_item{
  margin-top: 2.5rem;
}

.shortcourse_item:last-of-type{
  margin-bottom: 5rem;
}

.shortcourse_item_hd{
  font-size: 3.5rem;
  padding-bottom: 1rem;
  margin-bottom: 2.4rem;
}

.shortcourse_item_hd02{
  font-size: 3rem;
  margin-bottom: 2.4rem;
}

.shortcourse_item_hd .dot_ttl {
  padding-left: 2.5rem;
  font-size: 3.5rem;
}

.shortcourse_item_hd .dot_ttl:before {
  top: 1.25rem;
  width: 1rem;
  height: 1rem;
}

.shortcourse_item_txt{
  font-size: 1.6rem;
}

.shortcourse_item_img{
  margin-top: 3.8rem;
  grid-gap: 2rem;
}

.shortcourse_item_img img{
  border-radius: 2rem;
}


.nav-menu-en ul {
  gap: 4rem;
  padding-top: .5rem;
}

.nav-menu-en ul a {
  font-size: 1.7rem;
}
.en_top_sec01 {
  padding: 15.5rem 0 10.5rem;
}

.en_top_sec01 .top_sec02_ttl {
  margin: 3.6rem 0 4.4rem;
}

.en_top_sec01 .top_sec02_txt {
  font-size: 1.6rem;
}

.en_top_sec01 .top_sec02_illust02 {
  bottom: -3.3rem;
}

.en_top_sec02 .drivingrange_top {
  padding-bottom: 12rem;
}

.heading_en {
  font-size: 7.5rem;
  margin-bottom: 3.2rem;
}

.en_top_wrap .text_box .text_hd {
  font-size: 2rem;
  margin-bottom: 2rem;
}

.en_top_sec03 {
  padding: 10.7rem 0 12rem;
  border-radius: 10rem 0 0 0;
}

.en_top_image {
  gap: 3rem;
  margin-top: 4rem;
}

.en_top_image li img {
  border-radius: 2rem;
}

.en_top_image .caption {
  font-size: 1.6rem;
  left: 1.4rem;
  bottom: 1.2rem;
}

.en_top_sec03 .shortcourse_map {
  margin: 7rem auto;
}

.en_top_sec04 {
  padding: 10.5rem 0 0;
}

.en_top_sec04 .short_course_note {
  font-size: 1.6rem;
}

.en_top_sec05 {
  padding: 11rem 0 14rem;
}

.en_top_wrap .access_list .place {
  padding: .8rem;
}

.en_top_wrap .access_list .route {
  width: calc(42.3% - 2rem);
}

.en_top_wrap .access_list .route p {
  font-size: 1.8rem;
  padding: 0 .7rem;
}


/*==================================
  #Iccards .user_agreement
==================================*/

#Iccards .user_agreement{
	padding: calc(80 / 1400 * 100vw) 0 calc(80 / 1400 * 100vw);
}

#Iccards .user_agreement .container{
	max-width: 134rem;
	padding-left: 5rem;
	padding-right: 5rem;
}

#Iccards .sub-section{
	margin-bottom: calc(48 / 1400 * 100vw);
}

#Iccards .user_agreement .title{
	font-size: calc(24 / 1400 * 100vw);
	margin-bottom: calc(24 / 1400 * 100vw);
}

#Iccards .user_agreement .text{
	font-size: calc(16 / 1400 * 100vw);
}

#Iccards .user_agreement .mg_b{
	margin-bottom: calc(16 / 1400 * 100vw);
}

#Iccards .user_agreement .lists li{
	margin-bottom: calc(9 / 1400 * 100vw);
}

#Iccards .user_agreement .last-text{
	margin-top: calc(24 / 1400 * 100vw);
}

#Iccards .js_terms{
	height: calc(300 / 1400 * 100vw);
	overflow: hidden;
	position: relative;
}

#Iccards .user_agreement .btn_links-down {
	width: 100%;
	max-width: none;
	width: calc(290 / 1400 * 100vw);
	height: calc(60 / 1400 * 100vw);
	border-radius: calc(30 / 1400 * 100vw);
	font-size: calc(16 / 1400 * 100vw);
	padding: 0 calc(66 / 1400 * 100vw) 0 calc(33 / 1400 * 100vw);

	/* 背景を分解して指定 */
	background-size: calc(11 / 1400 * 100vw) auto;
}

/*==================================
#environmen
 .benefits-lists
==================================*/

#environment .benefits-lists{
	gap: calc(30 / 1400 * 100vw);
	margin-top: calc(56 / 1400 * 100vw);
}

#environment .company_wrap:nth-of-type(2){
	padding-bottom: 0;
}
#environment .company_wrap:nth-of-type(3){
	padding-top: calc(100 / 1400 * 100vw);
}

#environment .benefits-lists .item{
	width: calc(605 / 1400 * 100vw);
	border: solid 1px #000;
	padding: calc(40 / 1400 * 100vw) 0 calc(24 / 1400 * 100vw);
	border-radius: calc(20 / 1400 * 100vw);
}

#environment .benefits-lists .title{
	top: calc(-20 / 1400 * 100vw);
	margin-left: calc(-100 / 1400 * 100vw);
	left: 50%;
	padding: calc(6 / 1400 * 100vw) calc(40 / 1400 * 100vw) calc(6 / 1400 * 100vw) calc(40 / 1400 * 100vw);
	width: calc(200 / 1400 * 100vw);
	font-size: calc(20 / 1400 * 100vw);
	border-radius: calc(99 / 1400 * 100vw);
}

#environment .benefits-lists .title .pos{
	position: relative;
	top: calc(-2 / 1400 * 100vw);
}

#environment .benefits-lists .text{
	font-size: calc(23 / 1400 * 100vw);
}


/*==================================
#terms
.sub-sectio
==================================*/

#terms .sub-section{
	margin-bottom: calc(48 / 1400 * 100vw);
}

#terms .sub-section .title{
	font-size: calc(24 / 1400 * 100vw);
	margin-bottom: calc(24 / 1400 * 100vw);
}

#terms .sub-section .title-2{
	font-size: calc(24 / 1400 * 100vw);
	margin-bottom: calc(24 / 1400 * 100vw);
}

#terms .sub-section .text{
	font-size: calc(16 / 1400 * 100vw);
	margin-bottom: calc(16 / 1400 * 100vw);
}

#terms .sub-section .mg_b{
	margin-bottom: calc(16 / 1400 * 100vw);
}

#terms .sub-section .lists li{
	margin-bottom: calc(9 / 1400 * 100vw);
}

/*==================================
.language_btn
==================================*/

.language_btn {
  width: 9rem;
  height: 3.6rem;
  border-radius: 99.9rem;
}

.language_btn .active_bar {
  border-radius: 99.9rem;
}

/*==================================
.top_cup_link
==================================*/

.top_cup_link:hover a .top_cup_link-arrow::after{
	transform: translateX(.5rem);
}

/*=====================================
	.challenge_calendar_lists
=====================================*/

.challenge_calendar_lists{
	display: flex;
	flex-wrap: wrap;
	gap: 2.2rem;
}

.challenge_calendar_lists .item{
	width: calc((100% - 4.4rem) / 3);
}

.challenge_calendar_wrap{
	border-radius: 1.2rem;
	padding: 1.6rem;
}

.challenge_calendar{
	border-radius: 1.4rem;
	padding: 3.4rem 2rem;
}

.challenge_calendar caption{
	font-size: 2.2rem;
	padding: 1rem;
	padding: 1.8rem 0;
	margin: -1.6rem -1.6rem 0 -1.6rem;
}

.challenge_calendar th,
.challenge_calendar td{
	padding: 1rem 0;
	font-size: 1.6rem;
}

.challenge_calendar td .icon{
	margin-left: -1.8rem;
	margin-top: -1.6rem;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 9.9rem;
}

/*=====================================
	.challenge_icon_detail_containar
=====================================*/

.challenge_icon_detail_containar{
	margin-top: 1rem;
	margin-bottom: 4rem;
}

.challenge_icon_detail:nth-child(1){
	padding-right: 3rem;
}

.challenge_icon_detail .text{
	font-size: 2rem;
	margin-bottom: 1.8rem;
	padding-left: 3.6rem;
}

.challenge_icon_detail .text::after{
	left: -0.1rem;
	top: 0.2rem;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 9.9rem;
}

.challenge_icon_detail .label{
	font-size: 1.8rem;
}

.challenge_icon_detail .note-text{
	font-size: 1.6rem;
}

