@charset "utf-8";
/* CSS Document */


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


	/* -------------------- main_visual -------------------- */

	#main_visual{
		min-width: 100%;
		height: auto;
		position: relative;
	}

	#main_visual .pc {
		display: none;
	}

	#main_visual .sp {
		display: block;
	}

	.top_entry{
		width: 15%;
		margin: 0;
		position: absolute;
		top: 2%;
		right: 1%;
	}

	.top_entry a{
		position: static;
		top: auto;
		right: auto;
		z-index: 9999;
	}



	/* -------------------- eyecatch -------------------- */

	#eyecatch_img{
		width: 100%;
		min-width: initial;
		margin: 0 0 30px;
	}



	/* -------------------- top -------------------- */

	.post_list{
		line-height: 1.5em;
		flex-direction: column;
		width: 85%;
		margin-top: 10px;
	}

	.top_news a.readmore {
		width: 146px;
		margin: 22px auto 60px;
	}

	.top_news .post_list .post:nth-of-type(n+4) {
		display: none;
	}

	.post_list .post {
		max-width: initial;
		background-color: transparent;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		padding: 10px 0;
		border-bottom: 1px solid #ddd;
	}

	.post_list .post:not(:first-of-type) {
		margin-left: 0;
	}

	.post .thumbnail {
		width: 68px;
		min-width: 68px;
		height: 68px;
	}

	.post .news_detail {
		padding: 0 10px;
	}

	.post .news_detail p:first-child {
		font-size: 13px;
		margin-bottom: 5px;
	}

	.post .news_detail a {
		color: #000;
	}

	.media_list {
		width: 85%;
	}

	.top_news .media_list .media:nth-of-type(n+4) {
		display: none;
	}

	.media_list .media {
		padding: 13px 0 5px;
	}

	.media_list .media span {
		font-size: 13px;
		display: block;
		margin-bottom: 6px;
	}

	.top_brand {
		padding-bottom: 30px;
	}

	.top_brand .brand_list {
		margin-top: -20px;
		padding-bottom: 0;
		width: 100%;
		flex-direction: row;
	}

	.top_brand .brand_list::after {
		display: none;
	}

	.top_brand .brand_list .brand {
		width: 27vw;
		height: 27vw;
		margin-top: 15px;
	}

	.top_brand .showmore {
		margin-top: 30px;
		font-size: 12px;
		width: 146px;
	}

	.top_media.section_box {
		padding: 30px 20px;
	}

	.top_media_box{
		margin-bottom: 0px;
		justify-content: flex-start;
		width: 100%;
	}

	.top_facebook_box{
		width: 100%;
		margin: 0 auto 10px;
	}

	.top_instagram_box {
		width: 100%;
	}

	.insta-widget {
		width: 100%;
	}

	.insta-widget:not(:first-of-type) {
		margin-top: 25px;
	}

	.top_media_box_sm{
		width: 100%;
	}

	.top_line_box{
		margin-bottom: 16px;
		width: 100%;
	}

	.top_line_box img {
		width: 90%;
		margin: 0 auto 10px;
	}

	.top_twitter_box {
		width: 100%;
	}

	.top_twitter_box img {
		width: 100%;
		margin: 0 auto 10px;
	}

	.top_twitter_detail p {
		margin: 0;
	}

	.top_youtube_box {
		width: 100%;
	}

	.top_youtube_channel{
		width: 95%;
	}

	.top_youtube_btn a{
		padding: 7px 10px;
		font-size: 100%;
	}

	.top_youtube_list{
		justify-content: flex-start;
	}

	.top_youtube_box iframe{
		width: 100%;
		margin-bottom: 20px;
		height: 250px;
	}

	.top_point {
		padding-bottom: 30px;
	}

	.point_box {
		width: 100%;
	}

	.point_box .appli-banner {
		width: 100%;
	}

	.point_box .detail {
		margin: 10px auto 0;
		padding: 0 10px;
	}

	.point_box .detail a {
		margin: 10px auto 0;
	}

	.point_box .detail a:nth-child(n+3) {
		margin-top: 10px;
	}

	.top_sponsor {
		padding-bottom: 30px;
	}

	.top_sponsor_box{
		width: 100%;
		padding: 0 20px;
		justify-content: space-around;
	}

	.top_sponsor_box li{
		margin-bottom: 3vw;
		width: 47%;
	}

	.top_sponsor_box li:last-child{
		margin-bottom: 0;
	}

	.top_sponsor_box li:nth-of-type(2n+1) {
		margin-right: 0;
	}

	.top_sponsor_box li:nth-of-type(n+3) {
		margin-top: 0;
	}

	.top_sponsor_box img {
		width: 100%;
	}

	.top_recruit {
		padding-bottom: 20px;
	}

	.recruit_box_wrapper {
		width: 100%;
		padding: 0 20px;
		margin-top: -15px;
	}

	.recruit_box {
		width: 48%;
		margin-top: 15px;
	}

	.recruit_box .image {
		height: 33vw;
	}

	.recruit_box p {
		font-size: 12px;
		padding: 10px 0;
	}




	/* -------------------- company -------------------- */

	.company {
		float: none;
		width: 100%;
		margin-bottom: 60px;
	}

	.company .content_list {
		width: 80%;
		margin: auto;
		padding-bottom: 0;
		border: 0;
	}

	.content_list .content {
		width: 100%;
	}

	.content_list .content:not(:first-child) {
		margin-top: 30px;
	}

	.content_list .image {
		height: 49.2vw;
	}

	.mission .headline {
		width: 80%;
		margin: auto;
	}

	.mission .headline strong {
		font-size: 13px;
	}

	.mission .headline h3 {
		font-size: 15px;
		margin-top: 6px;
	}

	.mission .headline p {
		margin-top: 8px;
	}

	.satisfaction {
		flex-wrap: wrap;
		width: 80%;
		margin: auto;
		padding-bottom: 0;
	}

	.satisfaction img {
		width: 100%;
		height: 100%;
		max-width: 350px;
		margin: auto;
	}

	.satisfaction .text {
		margin-top: 40px;
	}

	.satisfaction h3 {
		font-size: 15px;
		padding-bottom: 7px;
		margin-bottom: 14px;
	}

	.corporate h3 {
		font-size: 16px;
		padding-left: 10px;
		padding-bottom: 0;
	}

	.corporate table {
		width: 85%;
		margin: 20px auto 80px;
	}

	.corporate table th {
		width: 100%;
		display: block;
		padding: 15px 0 5px;
	}

	.corporate table td {
		width: 100%;
		display: block;
		padding: 0 0 10px 0;
	}

	.corporate table iframe {
		width: 100%;
		height: 60vw;
	}

	.history table {
		width: 85%;
		margin: auto;
		margin-bottom: 80px;
	}

	.history table th {
		width: 100%;
		display: block;
		padding-bottom: 0;
	}

	.history table td {
		width: 100%;
	}

	.message {
		width: 95%;
		margin: auto;
	}

	.message > img {
		width: 100vw;
		margin-left: -2.5%;
	}

	.message h3.middle {
		font-size: 18px;
		margin-top: 50px;
	}

	.message h3.middle span {
		display: inline-block;
	}

	.message h3.small {
		font-size: 16px;
	}

	.message .flex {
		flex-direction: column-reverse;
	}

	.message .flex p {
		font-size: 13px;
	}

	.message .flex:first-of-type img {
		display: none;
	}

	.message .flex:last-of-type img {
		margin: 0 0 20px 0;
	}

	.message > p {
		margin-top: 50px;
		font-size: 13px;
	}




	/* -------------------- policy -------------------- */

	.policy_logo_box_01{
		width: 100%;
		margin: 0 0 30px;
		text-align: center;
		justify-content: center;
		align-items: flex-start;
	}

	.policy_logo_box_01 p:first-child{
		width: 40%;
		margin: 0 auto 10px;
	}

	.policy_logo_box_01 p:last-child{
		font-size: 129%;
		line-height: 1.4em;
	}

	.policy_logo_box_02,
	.policy_ism_box,
	.policy_awards_box_02,
	.policy_recital_box{
		justify-content: center;
	}

	.policy_logo_detail,
	.policy_ism_detail,
	.policy_awards_detail,
	.policy_recital_box p{
		width: 80%;
		margin-bottom: 30px;
	}

	.policy_logo_box_02 div.policy_logo_detail:last-child,
	.policy_ism_box div.policy_ism_detail:last-child,
	.policy_awards_box_02 div.policy_awards_detail:last-child,
	.policy_recital_box p:last-child{
		margin-bottom: 0;
	}

	.policy_tours_box,
	.policy_party_box{
		justify-content: flex-start;
	}

	.policy_tours_box p:nth-child(3){
		margin-bottom: 20px;
	}

	.policy_awards_box_01{
		justify-content: flex-start;
		align-items: flex-start;
	}

	.policy_awards_img,
	.policy_joined_img{
		width: 100%;
		margin-bottom: 10px;
	}

	.policy_awards_txt,
	.policy_joined_txt{
		width: 100%;
	}

	.policy_joined_box{
		justify-content: flex-start;
		align-items: flex-start;
	}

	.policy_recital_txt,
	.policy_recital_box,
	.policy_party_box p:first-child{
		margin-bottom: 20px;
	}

	.policy_poketbook_box{
		width: 100%;
		margin: 0;
		justify-content: center;
		align-items: flex-start;
	}

	.policy_poketbook_img{
		width: 137px;
		margin-bottom: 10px;
	}

	.policy_poketbook_txt{
		width: 100%;
	}





	/* -------------------- brand -------------------- */

	#eyecatch.brand {
		height: 27vw;
		width: 100%;
		min-width: initial;
	}

	.brand_list {
		margin-top: 0;
		flex-direction: column;
		align-items: center;
	}

	.brand_list .brand {
		width: 100%;
		height: 474px;
		border-width: 0 0 1px 0;
		margin-top: 30px;
	}

	.brand_list .brand .image {
		width: 302px;
		height: 218px;
		margin: auto;
	}

	.brand_list .brand .detail {
		padding: 16px 0;
		width: 302px;
		margin: auto;
	}

	.brand_list .brand .counter {
		width: 302px;
		margin: 14px auto 0;
	}

	.main_visual {
		min-width: initial;
	}

	.brand_section h2 {
		padding-right: 13px;
	}

	/* .brand_section.news h3 {
		font-size: 16px;
		padding-left: 10px;
		margin-top: -30px;
	} */

	.brand_section.news .news_list,
	.news_list {
		flex-direction: column;
		width: 85%;
		margin: auto
	}

	.brand_section.news .news,
	.news_list .news {
		flex-wrap: nowrap;
		border: 0;
		width: 100%;
		padding-bottom: 10px;
		border-bottom: 1px solid #ddd;
		margin-top: 10px;
	}

	.brand_section.news .image,
	.news_list .news .image {
		min-width: 68px;
		width: 68px;
		height: 68px;
		background-color: white;
	}

	.brand_section.news .detail,
	.news_list .news .detail {
		padding: 0;
		margin-left: 10px;
	}

	.brand_section.news .detail p:first-child,
	.news_list .news .detail p:first-child {
		font-size: 10px;
		font-weight: bold;
	}

	.news_list .news .detail p {
		font-weight: normal;
	}

	.brand_section.news {
		margin-top: 50px;
	}

	.brand_section .line {
		width: 95%;
	}

	.brand_section.concept {
		margin: auto;
	}

	.brand_section.concept h3 {
		margin-top: 20px;
	}

	.brand_section.concept p {
		margin-top: 20px;
	}

	.brand_section.concept .flex {
		margin: 20px auto 0;
		width: 85%;
	}

	.brand_section.concept .flex:nth-of-type(2n) {
		flex-direction: column-reverse;
	}

	.brand_section.concept .flex img {
		max-width: initial!important;
	}

	.brand_section.concept .flex:nth-of-type(2n+1) img {
		margin-right: 0;
	}

	.brand_section.concept .flex:nth-of-type(2n) img {
		margin-left: 0;
	}

	#search .brand_logos {
		justify-content: space-between;
	}

	#search .brand_logo {
		width: calc(50% - 10px);
		margin: 0 0 10px;
		height: calc(50vw - 43px);
	}

	.brand_section.shop_list {
		padding: 0 0 60px;
		margin: 50px auto 0;
	}

	.brand_section.shop_list .line {
		top: 74px;
		left: 20px;
	}

	.brand_section.shop_list > p {
		font-size: 16px;
		width: 85%;
		margin: 30px auto 0;
	}

	.brand_section.shop_list .shops {
		width: 85%;
		margin: auto;
	}

	.brand_section.shop_list .shop {
		flex-direction: column;
	}

	.brand_section.shop_list .shop:first-child {
		padding-top: 0;
	}

	.brand_section.shop_list .shop:nth-of-type(n+3) {
		border: 0;
	}

	.brand_section.shop_list .image {
		width: 100%;
		max-width: initial;
		height: 85vw;
	}

	.brand_section.shop_list .detail {
		margin-left: 0;
		margin-top: 15px;
	}

	.brand_section.shop_list .detail h3 a {
		text-decoration: none;
	}



	/* -------------------- shop -------------------- */

	#search {
		width: 95%;
		margin: 20px auto 60px;
	}

	#search .keyword,
	#search .brand {
		padding: 20px;
		border-radius: 4px;
	}

	#search .brand {
		margin-top: 20px;
	}

	#search h3 {
		font-size: 16px;
		margin-bottom: 15px;
	}

	#searchform input[type="text"] {
		font-size: 11px;
	}

	#searchform input[type="submit"] {
		margin-top: 17px;
	}

	.search_term {
		width: 95%;
		margin: 30px auto 0;
	}

	.search_term h3 {
		font-size: 16px;
	}

	.search_term p {
		font-size: 14px;
		padding: 10px;
		border-width: 1px;
		margin-top: 10px;
	}

	.search_term p span {
		font-size: 14px;
	}

	#search_toggle_btn {
		font-size: 12px;
		width: 95%;
		margin: 10px auto 0;
	}

	.shop.result .child_head:first-of-type {
		margin-top: 60px;
	}

	.shop .brand_section.shop_list > p {
		margin-top: 20px;
		margin-bottom: -10px;
	}

	.shop_box{
		margin-bottom: 25px;
		padding-bottom: 10px;
		border-bottom: solid 1px #b8b8b8;
	}

	.bland_box div.shop_box:last-child{
		margin-bottom: 0;
	}

	.shop_detail{
		width: 100%;
		margin-bottom: 15px;
		-ms-flex-pack: justify;/*--- IE10 ---*/
		justify-content: space-between;
		-ms-flex-align: center;/*--- IE10 ---*/
		align-items: center;
	}

	.shop_img{
		width: 230px;
	}

	.shop_info{
		width: 470px;
	}

	.shop .area_map {
		padding-bottom: 80px;
	}

	.shop .area .map-box {
		padding: 0 10px;
	}



	/* -------------------- news -------------------- */

	.news_pickup_img img{
		max-width: 100%;
	}

	.news_list_lg_box{
		justify-content: flex-start;
	}

	.news_list_lg{
		width: 100%;
	}

	.news_list_sm{
		justify-content: flex-start;
		align-items: flex-startr;
	}

	.news_box div.news_list_sm:last-child{
		margin-bottom: 0;
	}

	.news_list_sm_img{
		width: 100%;
		margin-bottom: 10px;
	}

	.news_list_sm_txt_box{
		width: 100%;
	}

	.pagination {
		margin-top: 20px;
		margin-bottom: 60px;
	}

	/* ---------- local ---------- */

	.local_map_box ul{
		width: 100%;
		height: auto;
		margin: 0;
		padding-top: 90%;
		background-size: 90%;
		background-position: 50% 0;
		position: static;
		display: flex;
		justify-content: space-between;
		flex-flow: row wrap;
	}

	.local_map_box ul li{
		width: 45%;
		margin-top: 10px;
		background-color: rgba(222,130,0,1);
		position: static;
	}


	/* ---------- personality ---------- */

	.personality_box {
		margin-bottom: 60px;
	}

	.personality_list{
		width: 42%;
	}

	.personality_list:nth-child(3){
		margin-top: 30px;
	}

	.personality_list h3{
		font-size: 86%;
		line-height: 1.5em;
	}

	.personality .single_post p span {
		line-height: 1.4;
	}




	/* -------------------- recruit -------------------- */

	.recruit_ttl_01{
		padding-bottom: 0;
		font-size: 172%;
	}

	.recruit_ttl_02{
		padding-bottom: 0;
		font-size: 115%;
	}

	.recruit_message p{
		width: 100%;
		height: 200px;
		background-size: cover;
		background-position: 12% 0;
		overflow: hidden;
	}

	.recruit_message p a{
		width: 100%;
		padding: 2% 0;
		font-size: 115%;
		bottom: 0;
		left: 0;
	}

	.recruit_voice_box{
		width: 100%;
		margin-bottom: 40px;
		justify-content: flex-start;
		align-items: flex-start;
		flex-flow: column-reverse wrap;
	}

	.recruit_voice_txt_box{
		width: 100%;
	}

	.recruit_voice_txt_box h2{
		font-size: 100%;
		margin-bottom: 10px;
	}

	.recruit_name{
		margin-bottom: 15px;
	}

	.recruit_voice_img{
		width: 100%;
		margin-bottom: 15px;
	}

	.recruit_entry_box{
		width: 100%;
		justify-content: center;
	}

	.recruit_entry_detail{
		width: 100%;
		margin-bottom: 40px;
	}

	.recruit_entry_img{
		width: 70%;
		margin: 0 auto 10px;
	}

	.recruit_entry_txt{
		height: auto;
		margin-bottom: 10px;
	}


	/* ---------- recruit_detail ---------- */

	.recruit_detail_box{
		justify-content: flex-start;
		align-items: flex-start;
	}

	.recruit_detail_box_img{
		width: 100%;
		margin-bottom: 10px;
	}

	.recruit_detail_box_txt{
		width: 100%;
	}

	.recruit_detail table tr {
		width: 100%;
		display: block;
		list-style: none;
	}

	.recruit_detail .wrapper > table th{
		width: auto;
		padding: 20px 0 0;
		border-bottom: none;
		display: list-item;
    color: white;
    background-color: #182850;
    line-height: 1;
    font-size: 12px;
    padding: 10px;
    padding-top: 11px;
	}

	.recruit_detail table td{
		width: auto;
		padding: 5px 0 20px;
		display: list-item;
    border: 0;
	}

	.newgraduates_voice iframe{
		width: 100%;
		height: 250px;
	}

  .recruit_form {
    padding: 0 10px;
  }

	.recruit_form table tr{
		width: 100%;
		display: block;
		list-style: none;
	}

	.recruit_form table th{
		width: auto;
		padding: 20px 0 0;
		font-size: 115%;
		border-bottom: none;
		display: list-item;
	}

	.recruit_form table td{
		width: auto;
		padding: 5px 0 20px;
		display: list-item;
    border-bottom: 1px dotted #ccc;
	}

	.recruit_form input[type="text"],
	.recruit_form input[type="tel"],
	.recruit_form input[type="email"]{
		width: 100%;
	}

	.recruit_form textarea{
		width: 100%;
		height: 150px;
	}


	/* ---------- message ---------- */

	.message_detail{
		justify-content: flex-start;
		flex-flow: column-reverse wrap;
	}

	.message_detail_txt{
		width: 100%;
	}

	.message_detail_img{
		width: 100%;
		margin-bottom: 10px;
	}

	.message_img{
		margin-bottom: 20px;
	}


	/* ---------- senior_voice ---------- */

	.senior_voice_movie{
		width: 100%;
		height: 250px;
	}

	.senior_voice_detail{
		justify-content: flex-start;
		flex-flow: column-reverse wrap;
	}

	.senior_voice_detail_txt{
		width: 100%;
	}

	.senior_voice_detail_img{
		width: 100%;
		margin-bottom: 10px;
	}




	/* -------------------- contact -------------------- */

	.contact .question {
		width: 85%;
		margin: auto;
	}

	.contact .buttons {
		width: 85%;
		flex-direction: column;
	}

	.contact .buttons a {
		width: 100%;
		max-width: 352px;
		margin: auto;
		font-size: 14px;
	}

	.contact .buttons a:last-child {
		margin-top: 20px;
	}

	.contact_form .inner {
		width: 85%;
		margin: auto;
	}

	.contact_form table tr,
	.page_box table tr {
		width: 100%;
		display: block;
		list-style: none;
	}

	.contact_form table th,
	.page_box table th {
		width: auto;
		padding: 20px 0 0;
		font-size: 15px;
	}

	.contact_form table th br{
		display: none;
	}

	.contact_form table td,
	.page_box table td {
		width: auto;
		padding: 10px 0 20px;
		display: list-item;
	}

	.contact_form input[type="text"],
	.contact_form input[type="tel"],
	.contact_form input[type="email"]{
		width: 100%;
	}

	.contact_form textarea{
		width: 100%;
		height: 300px;
	}

	.contact_form input[type="submit"] {
		width: 100%;
		max-width: 302px;
		margin: auto;
		-webkit-appearance: none;
	}



	/* -------------------- worldonepress -------------------- */

	.press_mainvisual {
		padding: 40px 0;
		flex-direction: column;
		align-items: center;
		min-width: initial;
	}

	.press_mainvisual .title {
		width: 80%;
	}

	.press_mainvisual .title img {
		display: block;
		width: 60%;
		margin: 0 auto 20px;
	}

	.press_mainvisual .title p {
		font-size: 13px;
	}

	.press_mainvisual .pdf,
	.press_mainvisual .backnumber {
		display: none;
	}

	.press_mainvisual .pdf.smp,
	.press_mainvisual .backnumber.smp {
		display: block;
	}

	.press_mainvisual .pdf {
		font-size: 14.4px;
		margin-top: 0;
	}

	.latest_press {
		margin: 20px auto 0;
		width: 80%;
	}

	.latest_press_detail {
		margin: 40px auto 0;
		width: 80%;
	}

	.latest_press_detail h3 {
		font-size: 16px;
	}

	.worldonepress {
		width: 100%;
		float: none;
		padding-bottom: 80px;
	}

	.worldonepress .backnumber:not(:first-of-type) {
		margin-top: 60px;
	}

	.worldonepress h3 {
		font-size: 16px;
		padding-bottom: 0;
		padding-left: 10px;
	}

	.worldonepress_list {
		width: 95%;
		margin: 25px auto 0;
	}

	.worldonepress_list::after {
		width: 31.7%;
	}

	.worldonepress_detail {
		width: 31.7%;
	}

	.worldonepress_detail:nth-of-type(n+4) {
		margin-top: 18px;
	}

	.worldonepress_detail .date {
		font-size: 12px;
	}

	.worldonepress_detail .download {
		font-size: 10px;
	}

	.backnumber_link {
		display: none;
	}



	/* -------------------- enkaiinfo -------------------- */

	.enkaiinfo_box ul li{
		margin-bottom: 10px;
	}





	/* -------------------- sitemap -------------------- */

	.sitemap {
		flex-wrap: wrap;
		width: 85%;
		margin: auto;
		padding: 5px 0 100px;
	}

	.sitemap_col {
		width: 100%;
	}

	.sitemap p {
		font-size: 14px;
		padding-left: 10px;
	}













	.sitemap_list{
		padding: 15px;
	}

	.sitemap_list ul{
		width: 49%;
		margin-bottom: 20px;
	}

	.sitemap_list ul:nth-child(3),
	.sitemap_list ul:nth-child(4){
		margin-bottom: 0;
	}

	.sitemap_list ul li{
		font-size: 100%;
		line-height: 1.5em;
	}





	/* -------------------- pointcard -------------------- */

	.pointcard {
		float: none;
		width: 100%;
		padding-bottom: 40px;
		margin-top: 40px;
		padding-right: 0;
	}

	.pointcard .intro {
		padding: 40px 0 20px;
		flex-direction: column;
	}

	.pointcard .intro .image {
		width: 40vw;
		min-width: 160px;
		margin: auto;
	}

	.pointcard .download {
		padding-top: 30px;
	}

	.pointcard .intro h2 {
		margin-bottom: 30px;
	}

	.pointcard .intro h2 span {
		font-size: 40px;
	}

	.pointcard .intro .download-link {
		margin-top: 20px;
	}

	.pointcard .intro .download-notice {
		padding: 0;
		width: 90%;
		margin: 50px auto 0;
		max-width: 430px;
	}

	.pointcard .how-to {
		margin-top: 0;
	}

	.pointcard .how-to .image {
		width: 85%;
		margin: auto;
		flex-direction: column;
		align-items: center;
	}

	.pointcard .how-to .image img {
		width: 70vw;
		max-width: 300px;
		margin-top: 30px;
	}

	.pointcard .campaign .image {
		width: 85%;
	}

	.pointcard .pointcard-info {
		width: 85%;
		margin: 40px auto 0;
	}

	.pointcard .pointcard-info p {
		font-size: 14px;
	}

	.pointcard.terms {
		width: 85%;
		margin: 30px auto 0;
	}

	.pointcard.terms h3 {
		font-size: 19px;
		margin-top: 40px;
	}

	.pointcard.faq {
		width: 85%;
		margin: 40px auto 0;
	}

	.pointcard.faq .category {
		font-size: 22px;
	}

	.pointcard.faq .question {
		font-size: 18px;
	}

	.pointcard.inquiry {
		width: 85%;
		margin: auto;
	}

	.pointcard.inquiry h3 {
		font-size: 18px;
		line-height: 1.4;
	}

	.pointcard.inquiry p {
		font-size: 14px;
	}

	.pointcard.inquiry a {
		width: 260px;
		margin-top: 30px;
		padding: 7px 0;
	}


	/* ------------- privacypolicy ------------- */

	.privacypolicy {
		width: 85%;
		margin: auto;
		padding: 5px 0 100px;
	}



	/* -------------------- single, news -------------------- */
	#contents.news .posts {
		float: none;
		width: 100%;
	}

	#contents.news h2 {
		font-size: 16px;
		padding-left: 10px;
		padding-bottom: 2px;
		margin-bottom: 20px;
	}

	#contents.news h2:not(:first-of-type) {
		margin-top: 80px;
	}

	#contents.news .readmore {
		margin-top: 20px;
		padding: 5px 0;
	}

	.posts .single_post {
		width: 85%;
		margin: auto;
		padding-bottom: 60px;
	}

	.posts .date {
		padding-left: 10px;
	}

	h1.post_head {
		padding-left: 10px;
		font-size: 20px;
	}

	.single_post img{
		max-width: 100%;
		height: auto;
	}

	.alignright{
		margin: 0 auto 10px;
		float: none;
	}

	.alignleft{
		margin: 0 auto 10px;
		float: none;
	}

	.wp-caption-text{
		max-width: 100%;
	}

	.wp_social_bookmarking_light img{
		width: 88px;
	}

	.single_bnr{
		justify-content: flex-start;
	}

	.single_bnr p:first-child{
		margin-bottom: 15px;
	}

	.news_box .news_list {
		width: 85%;
		margin: auto;
	}

	.news_box .news_list .news {
		width: 100%;
		border: 0;
		border-bottom: 1px solid #ddd;
		padding: 10px 0;
		margin-top: 0;
	}

	.news_box .news_list .news .image {
		width: 68px;
		height: 68px;
	}

	.news_box .news_list .news .detail {
		padding: 0 10px;
	}

	.news_box .news_list .news .detail p {
		font-weight: normal;
	}

	.news_box .news_list .news .detail p:first-child {
		font-size: 10px;
		font-weight: bold;
	}

	.news_box a.link_contact {
		width: 85%;
		margin-top: 20px;
		margin-bottom: 100px;
	}


	/* -------------------- page -------------------- */

	.page_box p.confirm {
		width: 85%;
		margin: 30px auto 0;
	}

	.page_box table {
		width: 85%;
	}

	.page_box .submit {
		margin-top: 30px;
	}

	.page_box input[type="submit"]{
		width: 100%;
		max-width: 302px;
		margin: auto;
	}

	.page_box input[type="submit"]:first-child{
		margin-bottom: 20px;
	}



	/* ------------------- enkai ------------------- */

	.enkai .pankuzu {
		width: 100%;
		margin: 15px auto;
	}

	.enkai .main_visual {
		height: 100vw;
		max-height: 400px;
	}

	.enkai .main_logo {
		top: 12.5%;
		height: 75vw;
		max-height: 300px;
	}

	.enkai_topics  {
		min-width: initial;
	}

	.enkai_topics .inner {
		width: 100%;
		padding: 30px 0 50px;
	}

	.enkai_topics h2 {
		font-size: 20px;
		width: 90%;
		margin: auto;
	}

	.enkai_topics p {
		font-size: 14px;
		padding: 15px 10px 0;
	}

	.enkai_banner_list {
		width: 100%;
		margin: auto;
	}

	.enkai_banner {
		width: 43%;
		height: 11.5vw;
	}

	.theme_description {
		width: 95%;
		margin: 0 auto 23px;
	}

	.enkai .course_list {
		justify-content: flex-start;
		flex-wrap: nowrap;
		overflow: scroll;
	}

	.enkai .course_list::after {
		min-width: 10px;
	}

	.enkai .course_list::before {
		content: '';
		display: block;
		min-width: 10px;
	}

	.enkai .course {
		width: 258px;
		min-width: 258px;
		margin: 16px 10px;
	}

	.enkai .course .image {
		height: 158px;
	}

	.enkai .course .title h3 {
		font-size: 14px;
	}

	.enkai .course .title p {
		display: none;
	}

	.enkai .course .description,
	.enkai .course .dish,
	.enkai .course .drink {
		display: none;
	}

	.enkai .course .shops a {
		font-size: 12px;
		left: -78px;
		width: 220px;
	}

	.enkai .shop_search {
		width: 90%;
		max-width: 352px;
		margin-top: 9px;
	}



	/* ---------------- 三宮エリアLP --------------- */

	#contents.child.area #main {
		padding-bottom: 80px;
	}

	.area .main_visual {
		height: 100.04vw;
		max-height: 400px;
		min-height: 340px;
	}

	.area .logo {
		width: 100%;
	}

	.area .logo h2 {
		font-size: 17px;
		padding-top: calc(7vw + 10px);
		width: 98%;
	}

	.area .logo img {
		width: 90%;
		max-width: 430px
	}

	.area .logo p {
		font-size: 12px;
		width: 95%;
		margin-top: 17px;
		max-width: 450px;
	}

	.area_map {
		padding: 10px 8px 25px;
		min-width: initial;
	}

	.area_map .inner {
		width: 100%;
		padding: 28px 10px 60px;
	}

	.area_map h1 {
		font-size: 22px;
	}

	.area_map .head_text {
		font-size: 14px;
		margin-top: 12px;
	}

	.area .map-box {
		margin-top: 18px;
		width: 100%;
		height: 460px;
	}

	.area .map-box .detail {
		transition: initial;
		left: -100%;
		width: 100%;
	}

	.area_theme {
		padding: 60px 0 30px;
	}

	.area_theme .theme_description {
		margin-bottom: 0;
	}

	.area_theme .shop {
		margin-top: 20px;
		width: 45%;
		max-width: 200px;
	}

	.area_theme .shop .image {
		height: 45vw;
		max-height: 200px;
	}

	.area_theme .shop .image .rank {
		width: 55px;
		height: 45px;
	}

	.area_theme .shops {
		justify-content: space-between;
		width: 100%;
		max-width: 444px;
		margin: auto;
	}

	.area_theme .shop h3 {
		font-size: 12px;
		margin-top: 5px;
		display: flex;
		align-items: center;
	}

	.area_theme .shop .tel {
		margin-top: 0;
	}

	.area_theme:nth-of-type(2n) {
		padding: 60px 0 30px;
	}

	.area .shop_search {
		width: 80%;
		max-width: 352px;
		margin: 20px auto 0;
	}



	/* ---------- 鍋LP ---------- */

	.nabe .nabe_images {
		width: 100%;
		flex-wrap: nowrap;
		overflow: scroll;
	}

	.nabe .nabe_image {
		width: 160px;
		min-width: 160px;
		height: 160px;
		margin-left: 30px;
	}

	.nabe .rank {
		min-width: initial;
		padding: 20px 0 200px;
	}

	.nabe .rank .inner {
		width: 100%;
	}

	.nabe .rank .topics {
		flex-direction: column-reverse;
	}

	.nabe .rank .topics .image {
		width: 100%;
		height: 57.9vw;
		margin-top: 30px;
	}

	.nabe .rank .topics .text {
		width: 100%;
	}

	.nabe .rank .topics h3 {
		text-align: center;
		padding-bottom: 6px;
		margin-bottom: 7px;
	}

	.nabe .rank .topics p {
		font-size: 12px;
		padding: 0 10px;
	}

	.nabe .rank h2 {
		font-size: 24px;
		padding-bottom: 4px;
		margin-bottom: 0;
	}

	.nabe .nabe_detail {
		width: 95%;
		margin: 20px auto 0;
	}

	.nabe .nabe_detail .image {
		width: 100%;
		height: 95vw;
	}

	.nabe .nabe_detail .image .ranking {
		width: 100px;
		height: 83px;
	}

	.nabe .nabe_detail .detail {
		width: 100%;
		padding: 15px 10px 30px;
	}

	.nabe .nabe_detail h4 {
		font-size: 14px;
	}

	.nabe .nabe_detail h3 {
		font-size: 24px;
		margin-top: 0;
	}

	.nabe .nabe_detail .description {
		font-size: 12px;
	}

	.nabe .nabe_detail ul {
		padding-left: 0;
		padding-top: 22px;
	}

	.nabe .nabe_detail ul::before {
		top: 0;
		font-size: 10px;
	}

	.nabe .nabe_detail ul li a {
		font-size: 12px;
		line-height: 1.9;
	}

	.nabe .nabe_detail .vote {
		font-size: 14px;
		width: 220px;
		line-height: 2.6;
	}

	.nabe .twitter {
		min-width: initial;
		padding: 70px 0 80px;
	}

	.nabe .twitter .inner {
		width: 100%;
	}

	.nabe .twitter h2 {
		font-size: 24px;
		padding-bottom: 4px;
		margin-bottom: 8px;
	}

	.nabe .twitter p {
		font-size: 12px;
		padding: 0 10px;
	}

	.nabe .shoplist {
		width: 100%;
	}

	.nabe .brand_section.shop_list > p {
		margin-top: 20px;
		margin-bottom: -10px;
	}







} /* @media screen and (max-width: 640px) */





/* iPhone専用 */
@media screen and (max-device-width: 640px) {

 	.team_slide li{
		font-size: 8px;
	}

}
